blob: 2febca4447a42f9068bec433cc6e8263b39f45c9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
import org.scalacheck._
import Prop._
import Gen._
import Arbitrary._
import util._
import Buildable._
object Test extends Properties("Array") {
val myGens: Seq[Gen[Array[_]]] = List(
arbArray[Int],
arbArray[Array[Int]],
arbArray[List[String]],
arbArray[String],
arbArray[Boolean],
arbArray[AnyVal](arbAnyVal)
) map (_.arbitrary)
// inspired by #1857 and #2352
property("eq/ne") =
forAll(oneOf(myGens: _*)) { c1 =>
forAll(oneOf(myGens: _*)) { c2 =>
(c1 eq c2) || (c1 ne c2)
}
}
def smallInt = choose(1, 10)
// inspired by #2299
property("ofDim") = forAll(smallInt) { i1 =>
forAll(smallInt) { i2 =>
forAll(smallInt) { i3 =>
val arr = Array.ofDim[String](i1, i2, i3)
val flattened = arr flatMap (x => x) flatMap (x => x)
flattened.length == i1 * i2 * i3
}
}
}
}
|