scalamock是否支持模拟具有隐式和重复参数的curry mehtod?

时间:2017-03-04 16:13:07

标签: scalamock

我需要使用scalamock来模拟以下方法,但我没有设法做到这一点。它是curried,同时具有隐式和重复参数。 scalamock库是否支持模拟这样的组合?

def apply(key: String, args: Any*)(implicit lang: Lang): String

1 个答案:

答案 0 :(得分:1)

这个怎么样?

"complicated paramter lists" should "be mockable" in {
  trait Foo {
    def apply(key: String, args: Any*)(implicit lang: String): String
  }

  val m = mock[Foo]
  (m.apply(_: String, _: Seq[Any])(_: String)) expects(*, *, *) returning "Foo" once()


  implicit val s = "foo"
  m.apply("bar", 5, true, 42.0) should be ("Foo")
}