使用 scalacheck 查看列表是否已正确更改?
Using scalacheck to see if list is was changed correctly?
我如何使用 scalacheck 查看列表中的每个项目是否已正确递增。添加的函数只是将 5 添加到它的 parameter.Where 我标记的问题区域不起作用,我怎样才能更好地检查一个列表的每个元素与另一个列表?
val added = forAll { (a:Array[Int]) => {
val l=added(a)
all(
"size" |: a.size==l.size,
"sort/elements" |: for(i<-0 to a.size) a(i)+5==l(i) //problem area
)
}
}
据您所知,当数组为空时会出现异常。解决这个问题的一种方法是用不同的方式编写 for
循环:
(for(i<-1 until a.size) a(i - 1)+5==l(i - 1))
您也可以 zip
将 2 个序列放在一起并检查成对元素的相等性
a.zip(l).forall { case (i, j) => i + 5 == j }
我如何使用 scalacheck 查看列表中的每个项目是否已正确递增。添加的函数只是将 5 添加到它的 parameter.Where 我标记的问题区域不起作用,我怎样才能更好地检查一个列表的每个元素与另一个列表?
val added = forAll { (a:Array[Int]) => {
val l=added(a)
all(
"size" |: a.size==l.size,
"sort/elements" |: for(i<-0 to a.size) a(i)+5==l(i) //problem area
)
}
}
据您所知,当数组为空时会出现异常。解决这个问题的一种方法是用不同的方式编写 for
循环:
(for(i<-1 until a.size) a(i - 1)+5==l(i - 1))
您也可以 zip
将 2 个序列放在一起并检查成对元素的相等性
a.zip(l).forall { case (i, j) => i + 5 == j }