then 句にループを使用したテストがあります。
result.each {
it.name.contains("foo")
it.entity.subEntity == "bar"
}
for (String obj : result2) {
obj.name.contains("foo")
obj.entity.subEntity == "bar"
}
新たに、ループが実際にはテストされていないことに気付きました。foo、bar、またはその他のいずれを使用していても、テストは常に緑色です:)ループは別の方法でテストする必要があることがわかりました。ただし、「each」を「every」に変更するだけで例外がスローされます。
result.every {
it.name.contains("foo")
it.entity.subEntity == "bar"
}
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Spec expression: 1: expecting '}', found '==' @ line 1, column 61.
s("foo") it.entity.rootEntity == "bar" }
テストでループを正しく使用するにはどうすればよいですか? spock 0.7-groovy-2.0 を使用しています