0
私は再帰的なモックを動かすことができません。RhinoMock - 再帰的なモック
SomeClass someMOck = MockRepository.GenerateMock<SomeClass>();
//SomeClass is having another class as a property.
someMock.Stub(x => x.Manager.SomeData).Return("Hello");
実行時にエラーが発生します。
System.InvalidOperationException:以前のメソッド 'SomeClass.get_Manager();'スローするには戻り値または 例外が必要です。
私は3.6、ビルド21
任意のアイデアを使用していますか?
私はDemeterの法則を理解しています。しかし、考え方は、変更/リファクタリングなしでテストを行うことができるかどうかを確認することです。しかし、問題は、私が再帰的な嘲笑をしたいのですが、とにかく右にスタブアウトする必要があるということです。私はRhinoMockが自動的にそれを行うという印象を受けました。 – HAN
しかし、スタブした後でも、なぜこの構文が動作しないのかわかりません。x => x.Manager.SoemData 'x.Manager'は 'System.InvalidOperationException'型の例外をスローしました。 RhinoMocksのドキュメンテーションによれば、新しい再帰的モックの一環としてこの構文を使用できます。 – HAN