Używam skalamock do kpić z klasy, która zawiera niektóre przeciążone metody, ale dostaję pewne błędy.Szyderstwo przeciążonej metody
Na przykład:
val out = mock[PrintStream]
(out.print _).expects("cmd \r\n")
Podnosi się następujący błąd:
[error] [...]/src/test/scala/chili.scala:19: ambiguous reference to overloaded definition,
[error] both method print in class PrintStream of type (x$1: String)Unit
[error] and method print in class PrintStream of type (x$1: Array[Char])Unit
Ale jeśli próbuję użyć:
(out.print(_: String)).expects("cmd \r\n")
ja też pojawia się błąd:
[info] [...]/src/test/scala/chili.scala:19: Unable to resolve overloaded method print
[info] (out.print(_: String)).expects("cmd \r\n")
[info] ^
[error] [...]/src/test/scala/chili.scala:19: value expects is not a member of String => Unit
[error] (out.print(_: String)).expects("cmd \r\n")
Czy jest jakiś sposób na zrobienie tego w scala? Może przy użyciu innej biblioteki?
Dobra odpowiedź. Dzięki – simao