我第一次使用FakeItEasy來模擬一個複雜的數據結構。當嘲笑一個對象並設置這樣的屬性時,合夥人不會得到更新。它永遠是錯誤的。FakeItEasy屬性不更新
var @object = A.Fake<MyObject>();
@object.MyBooleanProperty= true;
通過對FakeItEasy文檔閱讀,一個例子表明,這是可以做到:
var @object= A.Fake<MyObject>();
A.CallToSet(() => @object.MyBooleanProperty).To(true);
這裏的問題是,該屬性沒有標記爲虛,這將引發與一個FakeConfiguredException
消息:
The current proxy generator can not intercept the specified method for the following reason:
- Non virtual methods can not be intercepted.
關於如何完成這一任何想法?提前致謝。
第一個選項必須工作。如果屬性不是虛擬的,那麼它會執行「真實」的代碼。除非你的屬性的getter返回值基於其他內部方法/屬性被FakeIteasy – Fabio