diff options
Diffstat (limited to 'test/files/scalacheck/array.scala')
-rw-r--r-- | test/files/scalacheck/array.scala | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/test/files/scalacheck/array.scala b/test/files/scalacheck/array.scala new file mode 100644 index 0000000000..0b7dee5716 --- /dev/null +++ b/test/files/scalacheck/array.scala @@ -0,0 +1,37 @@ +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) + + property("eq/ne") = + forAll(oneOf(myGens: _*)) { c1 => + forAll(oneOf(myGens: _*)) { c2 => + (c1 eq c2) || (c1 ne c2) + } + } + + def smallInt = choose(1, 10) + 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 + } + } + } +} + |