Sto usando un lambda con una funzione a più parametri ma Moq lancia questa eccezione in fase di esecuzione quando tento di chiamare la riga mock.Object.Convert(value, null, null, null);
.Moq + Unit Testing: System.Reflection.TargetParameterCountException: Parameter count mismatch
System.Reflection.TargetParameterCountException: Parameter count mismatch
Il codice è:
var mock = new Mock<IValueConverter>();
mock.Setup(conv => conv.Convert(It.IsAny<Object>(), It.IsAny<Type>(),
It.IsAny<Object>(), It.IsAny<CultureInfo>())).Returns((Int32 num) => num + 5);
var value = 5;
var expected = 10;
var actual = mock.Object.Convert(value, null, null, null);
Qual è il modo corretto per la sua attuazione?
Stavo per chiedere se si trattava di un test del framework o no, ma ho pensato che avrei avuto il beneficio del dubbio che forse era il codice provvisorio per cercare di convincere il Mock a comportarsi correttamente. –
Suppongo sia troppo, ma mi ha fatto ridere comunque. –
Ti sento. Quando ho eseguito il codice, ho pensato "sì, le librerie di framework funzionano ancora". :) –