Ich habe eine Last von Tests von einem anderen Entwickler in Rhino Mocks geschrieben. Wir verwenden jetzt NSubstitute, also schreibe ich die Tests in NSubstitute neu. Ich habe alles neu geschrieben außer dem Is.Anything. Was ist die NSubstitute Art des Schreibens der Is.Anything im folgenden Beispiel? Ich habe die Rhino Mocks zuerst und das NSubstitute-Beispiel als zweites gezeigt.Was ist das NSubstitute Äquivalent von Rhino Mocks Is.Anything
Rhino Mocks:
using Rhino.Mocks;
namespace ClassUnderTest.Tests
{
class TestExample_NSubstitute_Tests
{
private const int ClassUnderTestLicenseFeatureID = 5106;
private IMessenger messageProvider;
private IEventAggregator eventAggregator;
private ClassUnderTest BuildValidClassUnderTestObject()
{
ClassUnderTest newClassUnderTest = new ClassUnderTest(
eventAggregator,
messageProvider);
return newClassUnderTest;
}
[TestMethod]
public void ClassUnderTestBroadcastInstrumentState_NoArgs_BaseClassMethodCall()
{
//ARRANGE
ClassUnderTest classUnderTest = BuildValidClassUnderTestObject();
//ACT
classUnderTest.BroadcastState();
//ASSERT
messageProvider.AssertWasCalled(a => a.ClassToDoWork(
Arg<OrchestrationInstrumentRuntimeServiceModel>.Is.Anything,
Arg<long>.Is.Anything));
Assert.IsNotNull(classUnderTest);
}
}
}
NSubstitute Beispiel:
using NSubstitute;
namespace ClassUnderTest.Tests
{
class TestExample_NSubstitute_Tests
{
private const int ClassUnderTestLicenseFeatureID = 5106;
private IMessenger messageProvider;
private IEventAggregator eventAggregator;
private ClassUnderTest BuildValidClassUnderTestObject()
{
ClassUnderTest newClassUnderTest = new ClassUnderTest(
eventAggregator,
messageProvider);
return newClassUnderTest;
}
[TestMethod]
public void ClassUnderTestBroadcastInstrumentState_NoArgs_BaseClassMethodCall()
{
//ARRANGE
ClassUnderTest classUnderTest = BuildValidClassUnderTestObject();
//ACT
classUnderTest.BroadcastState();
//ASSERT
messageProvider.Received().ClassToDoWork(
Arg<OrchestrationInstrumentRuntimeServiceModel>.Is.Anything,//How do I re-write Is.Anything in NSubstitute?
Arg<long>.Is.Anything);//How do I re-write Is.Anything in NSubstitute?
Assert.IsNotNull(classUnderTest);
}
}
}