J'ai un objet que j'essaie de simuler en utilisant moq. Le constructeur de l'objet a des paramètres obligatoires :
public class CustomerSyncEngine {
public CustomerSyncEngine(ILoggingProvider loggingProvider,
ICrmProvider crmProvider,
ICacheProvider cacheProvider) { ... }
}
Maintenant, j'essaie de créer le mock pour cet objet en utilisant la syntaxe de moq v3 "setup" ou v4 "Mock.Of" mais je n'arrive pas à comprendre... tout ce que j'essaie ne se valide pas. Voici ce que j'ai jusqu'à présent, mais la dernière ligne me donne un objet réel, pas le mock. La raison pour laquelle je fais cela est que j'ai des méthodes sur le CustomerSyncEngine dont je veux vérifier qu'elles sont appelées...
// setup
var mockCrm = Mock.Of<ICrmProvider>(x => x.GetPickLists() == crmPickLists);
var mockCache = Mock.Of<ICacheProvider>(x => x.GetPickLists() == cachePickLists);
var mockLogger = Mock.Of<ILoggingProvider>();
// need to mock the following, not create a real class like this...
var syncEngine = new CustomerSyncEngine(mockLogger, mockCrm, mockCache);