Это класс с Import
ред MEF атрибутомMEF Moq-Cking на модульном тестировании
public class MyManager : IMyManager {
[ImportMany]
public ICollection<Lazy<IContext, IContextMetadata>> Contexts { get; set; }
public IContext { get; set; }
// Implemented from IMyManager interface
public void DoStuff(string name) {
this.Context = GetContext(name);
}
private IContext GetContext(string name) {
return Contexts.Where(c => c.Metadata.Name.Equals(name)).Single().Value;
}
}
Я следовал this answer, чтобы попытаться дразнить его и протестировать его, но я заблудился в фактическом/ожидаюсь значения, так как в моем случае мне нужно утверждать, что MyManager .Context
было изменено.
Я полагаю, что у меня есть Mock<IContext>()
и использовать его для Assert.Equals
, но как я могу рассказать обо всем этом ленивом списке?
Сохранено конструктором Lazy, который принимает как объект, так и метаданные в качестве параметров –