WhenCalledは全面的に文書化されています&私はなぜそれを使用しているのかはわかりませんが、私がトピックで見たすべての記事を非実践的に詳述したのと同じ方法です。Rhino Mocks WhenCalled - 代理人 'System.Action'は1つの引数をとりません
基本的にはあなたのような何かを行うことができるはず:
mock.Expect(x => x. SingleOrDefault(null))
.IgnoreArguments()
.WhenCalled(invocation => ((Action)invocation.Arguments[0]).Invoke());
しかし、これは私のためにコンパイルされません - 私はエラーが委任「System.Actionが」1つの引数を取らないと言ってます。
私はRhino MocksのV 4.0を使用しています - このメソッドは変更されていますか?私は WhenCalledを使用して、SingleOrDefault(この場合はラムダ式)に渡された引数を取得します。