1
Rhino Mockの別の開発者が作成したテストがあります。 NS substituteでテストを書き直していますが、NSubstituteを使用しています。私はIs.Anythingを除いて、何かを書き直しました。 ISを書き込むNS代理の方法は何ですか?以下の例では何がありますか?私はRhino Mocksを最初に示し、NS substituteは第二を試してみました。Rhino Mocks Isと同等のNS代理店は何ですか.Anything
Rhinoのモック:
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例:私は答えを自分で見つけ
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);
}
}
}