How can I check if a Seq[String]
is empty or not using specs2 in Scala ? I am using seq must be empty
or seq.length must be greaterThan(0)
but I end up always with type mismatch errors.
ret is Seq[String]
ret.length must be greaterThan(0)
[error] ApiTest.scala:99: type mismatch;
[error] found : Int
[error] required: org.specs2.matcher.Matcher[String]
[error] ret.length must be greaterThan(0)
I think the type mismatch error is caused by another bit of code than that which you've posted.
Your example should just work with:
ret must not be empty
I've tried and confirmed to be working correctly:
"Seq beEmpty test" should {
"just work" in {
Seq("foo") must not be empty
}
}
You could run into trouble if you use multiple assertions per test, for example the following doesn't compile:
"Seq beEmpty test" should {
"just work" in {
List() must be empty
Seq("foo") must not be empty
}
}
Which is unexpected, but easily fixed by helping the compiler:
"Seq beEmpty test" should {
"just work" in {
List() must beEmpty
Seq("foo") must not beEmpty
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With