私はこのテストを持っています
[Test]
public void SaveInventoryItemLoad_Will_Call_WCF_Service_SaveInventoryItemLoad()
{
adapter.SaveInventoryItemLoad(new List<InventoryItemLoadProxy>());
itemMasterBusinessClientMock.Verify(x => x.SaveInventoryItemLoad(It.IsAny<List<InventoryItemLoadProxy>>()), Times.Once());
}
WCF 側でメソッドをテストしたので、問題はありませんでした。必要なのは、「ねえ、サービスを呼び出しましたか?ええ!」と言うだけでした。とはいえ...上記のリストを10個以下のチャックに分割する必要があります。つまり、23個のアイテムのリストは、10個、10個、3個の3つのリストになります。したがって、ステップ1はもちろん、検証するユニットテストを作成することですSaveInventoryItemLoad メソッドに 10 個以上のアイテムをプッシュしていないこと。もちろん、メソッドが X 回呼び出されたことを確認できますが、それは私が望んでいることではありません。メソッドに提供されたリストが <= 10 であることを確認したいのですが、その方法がわかりません。moqクイックスタートをトロールしましたが、どうすればいいのかわかりません。
私はこれが何とかなるだろうと思った
// Verify setter with an argument matcher
mock.VerifySet(foo => foo.Value = It.IsInRange(1, 5, Range.Inclusive));
しかし、私はそれを機能させることができないようです。これまでにこれに遭遇したことはないと思います。誰でもこれを行う方法を知っていますか?
ありがとう