Scala 在辅助函数中使用specs2匹配器

Scala 在辅助函数中使用specs2匹配器,scala,specs2,Scala,Specs2,我有一套有大量重复代码的规范。我一直用不同的输入调用相同的方法,并对结果进行相同的断言 我想使用一个函数来减少重复,有点像下面的例子。有办法吗?如果是这样的话,有没有办法让我的断言可以在整个函数体中混合使用,这样函数返回类型就不必是匹配器 "MyApp" should { "do something" in { tryOperation("large-one") tryOperation("small-one") tryOperat

我有一套有大量重复代码的规范。我一直用不同的输入调用相同的方法,并对结果进行相同的断言

我想使用一个函数来减少重复,有点像下面的例子。有办法吗?如果是这样的话,有没有办法让我的断言可以在整个函数体中混合使用,这样函数返回类型就不必是匹配器

"MyApp" should {
     "do something" in {
         tryOperation("large-one")
         tryOperation("small-one")
         tryOperation("another-one")
         //...
     }
}

def tryOperation(input: String): Result = {
    val result = classUnderTest.operation(input)
    result.foo must beEqualTo(bar)
    result.length must beGreaterThan(0)
    result
}

您可以使用类似于
org.specs2.execute.Result.foreach的内容

"do something" in {
  Result.foreach((1 to 10).toList) { i =>
    i ==== i
  }
}