2
我有Double
值在价值上相似,但不是确切的。通常情况下,我会做:Scalatest案例类别清单中的双等同案件
val a: Double = ???
val b: Double = ???
a shouldEqual b +- 0.25
如果我只是比较单一的情况下类,我会做:
case class Data(label: String, value: Double)
val a: Data = ???
val b: Data = ???
a.value shouldEqual b.value +- 0.25
在我的情况,我有case类实例的列表,并想用比较宽容他们的value
属性:
val output = Seq(Data("a", 1.1), Data("b", 1.2))
val expected = Seq(Data("a", 0.9), Data("b", 1.1))
output should contain theSameElementsInOrderAs expected
当然,这会文件,因为value
属性不完全匹配。我需要的是这样的:
output should contain theSameElementsInOrderAs expected +- 0.25