Vorrei stub una funzione che restituisce AnyVal utilizza Mockito a Scala (Specs2 per la precisione), ma non cucitura al lavoro:Come simulare la funzione restituendo AnyVal con Mockito in Scala/Specs2?
import org.specs2.mutable._
import org.specs2.mock._
case class V(s: String) extends AnyVal
class A {
def f: V = new V("Hello")
}
class Sample extends Specification with Mockito {
"Mockito" should {
"mock A" in {
val a = mock[A]
a.f returns new V("hoge")
a.f match {
case V("hoge") => success
case _ => failure
}
}
}
}
questo viene a mancare con:
V cannot be returned by f()
f() should return String
I trovato tipo di soluzione (basata su cui ho fornito sopra frammento) usando pennarello interfaccia/caratteristica: https://gist.github.com/mtgto/9251779
ma questo non è alcuna soluzione per me, tipo quindi cambia a restituire (a causa di scherno/test problema di libreria).
Chiunque ha visto questo prima e sa come interrompere tale funzione?
Ho provato alcune cose e non penso che ci sia un modo migliore per quello che stai facendo. 'doReturn' non è tipometecked mentre' returns' è quindi è per questo che funziona. Un altro problema nell'interopase Scala/Java. libro di problemi, credo. – Eric