moqを使用してサードパーティライブラリにメソッドをモックしようとしています。問題は、私がモックしているメソッドがこのフレームワークの内部にあるオブジェクトを返すため、これをインスタンス化できないことです。
以下の例では、ChangeCollectionとItemChangeの両方が内部であり、エラーが発生します:'内部コンストラクターにアクセスできません'ChangeCollection'ここで'
私はこれに対する良い解決策を見つけるのに問題があります、誰かが何かアイデアを持っていますか?
[TestMethod]
public void GetItemsForExistingEMails_should_call_GetItems_atleast_once()
{
ewsMock = new Mock<IEwsIntegration>();
ewsMock.Setup(e => e.GetItems()).Returns(new ChangeCollection<ItemChange>);
var emailService = new EmailService(ewsMock.Object);
var items = emailService.GetItemsForExistingEMails();
ewsMock.Verify(e => e.GetItems(), Times.AtLeast(1));
Assert.AreEqual(0, items.Count());
}
public interface IEwsIntegration
{
ChangeCollection<ItemChange> GetItems();
}