Ich habe einen Test, wo NSsubstitute den falschen Anruf bei einer gefälschten Klasse überprüft. Wenn ich den Test wie den folgenden Code mache, überprüft die Received(...)
Methode, dass der Wert factory.featureClassName
einmal zurückgegeben wird.Nsubstitute: Empfangene Überprüfungen falsche Methode
[Test]
public void CreateDataController_WhenCalled_CreatesServiceSettings()
{
var factory = Substitute.ForPartsOf<AbstractDataServiceFactoryFake>("fileName");
factory.CreateDataController();
factory.Received(1).CreateServiceSettings("fileName", factory.FeatureClassName);
}
Um zu testen (wie beabsichtigten), dass die Methode CreateServiceSettings(...)
aufgerufen wird, sobald ich den folgenden Code verwenden:
[Test]
public void CreateDataController_WhenCalled_CreatesServiceSettings()
{
var factory = Substitute.ForPartsOf<AbstractDataServiceFactoryFake>("fileName");
var featureClassName = factory.FeatureClassName;
factory.CreateDataController();
factory.Received(1).CreateServiceSettings("fileName", featureClassName);
}
Es scheint, dass die Recieved()
Methode nicht direkt mit dem angegebenen Verfahren verbunden ist, nach dem Anruf. Kann mir jemand erklären, warum das passiert?