public void UnitTestFrameworkSettingsWithHandlersInDifferentInstances_CreateFramework_ConstructsTestProbeResolverWithCorrectHandlers() { //arrange Reply1 reply1 = new Reply1(); Reply2 reply2 = new Reply2(); Reply1 duplicateReply1 = new Reply1(); UnitTestFrameworkSettings sut = UnitTestFrameworkSettings .Empty .RegisterHandler <DummyChildActor1, Message1>(message1 => reply1) .RegisterHandler <DummyChildActor2, Message2>(message1 => reply2); UnitTestFrameworkSettings differentInstance = sut .RegisterHandler <DummyChildActor1, Message1>(message1 => duplicateReply1); //act sut.CreateFramework <DummyParentActor>(this); //assert HandlersPassedIntoShim.ShouldAllBeEquivalentTo( ImmutableDictionary <(Type, Type), Func <object, object> > .Empty .Add((typeof(DummyChildActor1), typeof(Message1)), message1 => reply1) .Add((typeof(DummyChildActor2), typeof(Message2)), message1 => reply2), options => options .Using <Func <object, object> >(context => context.Subject.Invoke(null).Should().BeSameAs(context.Expectation.Invoke(null))) .WhenTypeIs <Func <object, object> >()); }
public void TestProbeResolverSettings_Empty_DoesNotThrow() { //act Action act = () => { UnitTestFrameworkSettings sut = UnitTestFrameworkSettings.Empty; }; //assert act.ShouldNotThrow(); }
public void UnitTestFrameworkSettings_CreateFramework_ConstructsOnlyOneUnitTestFrameworkCreator() { //arrange UnitTestFrameworkSettings sut = UnitTestFrameworkSettings.Empty; //act sut.CreateFramework <DummyChildActor1>(TestKitPassedIntoSut); //assert UnitTestFrameworkCreatorConstructorCount.Should().Be(1); }
public void UnitTestFrameworkSettings_CreateFrameworkWithNullTestKit_ThrowsArgumentNullException() { //arrange UnitTestFrameworkSettings sut = UnitTestFrameworkSettings.Empty; //act Action act = () => sut.CreateFramework <DummyChildActor1>(null); //assert act.ShouldThrow <ArgumentNullException>(); }
public void UnitTestFrameworkSettings_CreateFramework_ConstructsOnlyOneUnitTestFrameworkCreator() { //arrange UnitTestFrameworkSettings sut = UnitTestFrameworkSettings.Empty; //act sut.CreateFramework <DummyParentActor>(TestKitPassedIntoSut, PropsPassedIntoSut, ExpectedChildrenCountPassedIntoSut); //assert UnitTestFrameworkCreatorConstructorCount.Should().Be(1); }
public void UnitTestFrameworkSettings_CreateFrameworkWithNullTestKitAndAndProps_ThrowsArgumentNullException() { //arrange UnitTestFrameworkSettings sut = UnitTestFrameworkSettings.Empty; //act Action act = () => sut.CreateFramework <DummyChildActor1>(null, (Props)null, ExpectedChildrenCountPassedIntoSut); //assert act.ShouldThrow <ArgumentNullException>(); }
public void UnitTestFrameworkSettings_RegisterWithFactory_ThrowsArgumentNullException() { //arrange UnitTestFrameworkSettings sut = UnitTestFrameworkSettings.Empty; //act Action act = () => sut.RegisterHandler <DummyChildActor1, Message1>(null); //assert act.ShouldThrow <ArgumentNullException>(); }
public void UnitTestFrameworkSettings_RegisterWithFactory_ReturnsNewInstance() { //arrange UnitTestFrameworkSettings sut = UnitTestFrameworkSettings .Empty .RegisterHandler <DummyChildActor1, Message1>(message1 => TestUtils.Create <object>()); //act UnitTestFrameworkSettings result = sut.RegisterHandler <DummyChildActor2, Message1>(message1 => TestUtils.Create <object>()); //assert result.Should().NotBe(sut); }
public void UnitTestFrameworkSettingsWithHandlers_CreateFramework_ConstructsTestProbeResolverWithHandlersThatReceiveTheCorrectMessage() { //arrange Message1 actual = null; UnitTestFrameworkSettings sut = UnitTestFrameworkSettings .Empty .RegisterHandler <DummyChildActor1, Message1>(mess => { actual = mess; return(new Reply1()); }); //act sut.CreateFramework <DummyParentActor>(this); //assert Message1 exptectedMessage = new Message1(); HandlersPassedIntoShim[(typeof(DummyChildActor1), typeof(Message1))].Invoke(exptectedMessage);