私はXUnitとMoqの初心者です。文字列を引数として受け取るメソッドがあります。XUnitを使用して例外を処理する方法。
[Fact]
public void ProfileRepository_GetSettingsForUserIDWithInvalidArguments_ThrowsArgumentException() {
//arrange
ProfileRepository profiles = new ProfileRepository();
//act
var result = profiles.GetSettingsForUserID("");
//assert
//The below statement is not working as expected.
Assert.Throws<ArgumentException>(() => profiles.GetSettingsForUserID(""));
}
テスト中のメソッド
public IEnumerable<Setting> GetSettingsForUserID(string userid)
{
if (string.IsNullOrWhiteSpace(userid)) throw new ArgumentException("User Id Cannot be null");
var s = profiles.Where(e => e.UserID == userid).SelectMany(e => e.Settings);
return s;
}
1
「期待どおりに機能していない」とはどういう意味ですか?(また、コードをより読みやすい形式にしてください。プレビューを使用し、読んでいた場合の外観に合わせて投稿してください。)
—
Jon Skeet
ヒント:を呼び出す
—
ジョンスキート2017
GetSettingsForUserID("")
前に電話をかけていAssert.Throws
ます。Assert.Throws
コールがあなたを助けることはできません。AAAについてはあまり厳格ではないことをお勧めします...