名前による呼び出し引数を持ついくつかのメソッドを使用して、あるオブジェクトと別のオブジェクトの間の相互作用をテストしています。ただし、その名前による呼び出し引数の引数マッチャーを作成する方法がわかりません。
これがモックオブジェクトの署名であるとしましょう。
def fn(arg1: => String, arg2: Int): Any
次に、私が本当にやりたいのは、そのメソッドが既知の2番目の引数で呼び出されているかどうかをテストすることです。私は最初の議論についてはそれほど気にしませんが、それを適切にテストする方法があることはボーナスになります。
これは機能しません:
there was one(mock) fn(any[()=>String], eq(12))
これも:
there was one(mock) fn(any[Function0[String]], eq(12))
そしてこれはコンパイルすらしません:
there was one(mock) fn(any[=>String], eq(12))
...これは明らかに予想されることです。