在moq中测试多次调用的方法

我有这样的界面:

Interface IWriteFile { string FileName {get;set;} void Open(); void WriteData(string dataToWrite); void Close(); } 

我想测试一个将使用此接口填充文件的类。 它会多次调用WriteData,我只想测试最终输出。 有没有办法向Mock对象引入一个新的私有字段,每次调用WriteData(Data)时都会附加该字段?

我真的只想看看文件在一天结束时会是什么样子。 有更好的方法吗?

那么,你需要对它被调用的次数进行某种计数吗?

 int count = 0; List items = new List(); var mock = new Mock(); mock.Setup(m => m.WriteData(It.IsAny())) .Callback((string data) => { items.Add(data); count++; });