Je suis assez nouveau dans les tests unitaires en C# et j'apprends à utiliser Moq. Voici la classe que j'essaie de tester.
class MyClass
{
SomeClass someClass;
public MyClass(SomeClass someClass)
{
this.someClass = someClass;
}
public void MyMethod(string method)
{
method = "test"
someClass.DoSomething(method);
}
}
class Someclass
{
public DoSomething(string method)
{
// do something...
}
}
Ci-dessous, ma classe de test :
class MyClassTest
{
[TestMethod()]
public void MyMethodTest()
{
string action="test";
Mock<SomeClass> mockSomeClass = new Mock<SomeClass>();
mockSomeClass.SetUp(a => a.DoSomething(action));
MyClass myClass = new MyClass(mockSomeClass.Object);
myClass.MyMethod(action);
mockSomeClass.Verify(v => v.DoSomething(It.IsAny<string>()));
}
}
J'obtiens l'exception suivante :
Expected invocation on the mock at least once, but was never performed
No setups configured.
No invocations performed..
Je veux juste vérifier si la méthode "MyMethod" est appelée ou non. Est-ce que j'ai raté quelque chose ?