7

名前による呼び出し引数を持ついくつかのメソッドを使用して、あるオブジェクトと別のオブジェクトの間の相互作用をテストしています。ただし、その名前による呼び出し引数の引数マッチャーを作成する方法がわかりません。

これがモックオブジェクトの署名であるとしましょう。

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)) ...これは明らかに予想されることです。

4

1 に答える 1

2

specs2に、名前による引数と関数/部分関数の引数のサポートを追加しました。最新のspecs2-1.9-SNAPSHOTを試してみて、うまくいかない場合はGitHubで問題を作成してください。

于 2012-03-07T22:12:13.253 に答える