我有一个
我有一个名为IFileDownloader的接口,它有一个名为DownlowadFile的签名(字符串url,字符串fileName)
我有一个名为StockManager的类,它实现了这个方法。该类有另一个名为DownloadFiles的方法(string url,String [] fileNames),它调用Interface方法。如何使用Rhino Mocks验证是否为String [] fileNames中的每个传递文件调用了签名?
我已经为单个文件实现了它,但不确定如何修改它以获取有序列表?这是我的示例代码:
var stubbedFileDownloader = MockRepository.GenerateMock<IFileDownloader>();
string url = "http://abc.def.klm/download/"
string EXPECTED_FILENAME = "AVC2.xml";
stubbedFileDownloader.Stub(x => x.DownloadFile(url, EXPECTED_FILENAME)
.Return(true);
var stockManager = new StockManager();
stockManager.DownloadFiles(url, new string[] { "AVC2.xml" } );
stubbedFileDownloader.VerifyAllExpectations();
答案 0 :(得分:0)
首先,如果您使用.Stub
,则不会指定行为。它没有记录期望。要记录VerifyAllExpectations
检查的预期,请使用.Expect
代替.Stub
。
当您使用.Expect
进行多个具有不同参数的调用时,VerifyAllExpectations
将检查是否按给定顺序调用它们。