2017-07-06 31 views
1

我有一些代碼,我有一個假的配置根。我想檢查是否有電話設置配置值。FakeItEasy - 僞裝作業

var fakeConfigRoot = A.Fake<IConfigurationRoot>(); 

//Do something that will set config item 

//A call to set the config must have happened 

是可能的假讓使用

A.CallTo(() => fakeConfigRoot["TestConfigItem"]).MustHaveHappened(Repeated.Exactly.Once); 

我想知道是否可以使用FakeItEasy僞造一個配置項的分配,如果是如何配置項。如果不可能,任何人都可以想到任何解決方法。

回答

1

你想要specify a call to a property setter使用A.CallToSet。這些示例沒有顯示,但該語法也適用於索引器。試試這個:

var fakeConfigRoot = A.Fake<IConfigurationRoot>(); 

fakeConfigRoot["animal"] = "hippo"; 

A.CallToSet(() => fakeConfigRoot["animal"]).MustHaveHappened(Repeated.Exactly.Once); 
+1

非常感謝你,我正在尋找什麼。 –

+0

我很高興答案有幫助。而且該功能也很有趣,以及實施! –