FakeItEasy 1.25.3をプロパティに例外をスローするようにしようとしています。セッターテストは正常に動作しますが、ゲッターは予期したように例外をスローしません。私は間違って何をしていますか?FakeItEasyプロパティgetter呼び出しルールがトリガーされていません
public interface IMisc
{
int IntProperty { get; set; }
}
// Setter throws exception as expected.
[Test]
public void Property_Setter_Throws()
{
var driver = A.Fake<IMisc>();
A.CallTo(driver).Where(call => call.Method.Name == "set_IntProperty")
.Throws(new Exception());
var i = driver.IntProperty;
Assert.That(delegate { driver.IntProperty = 3; }, Throws.Exception);
}
// Getter does not throw exception as expected.
[Test]
public void Property_Getter_Throws()
{
var driver = A.Fake<IMisc>();
A.CallTo(driver).Where(call => call.Method.Name == "get_IntProperty")
.Throws(new Exception());
driver.IntProperty = 3;
Assert.That(delegate { var i = driver.IntProperty; }, Throws.Exception);
}
この行の 'ドライバ.IntProperty = 3; ' –
@ YacoubMassadこれはうまくいきました。だから私は、プロパティのgetterの呼び出しルールを削除するプロパティの設定を使用して推測している? –
はい。プロパティ値を設定すると、呼び出されるとその値を返すようにゲッターを設定します。 –