public TestBase() : base(AkkaConfig.Config) { //Create mocks TestProbeCreatorMock = new Mock <ITestProbeCreator>(); // Create objects passed into sut constructor TestProbeCreator = TestProbeCreatorMock.Object; Message1 = new ExampleMessage1(); Type1 = typeof(ExampleMessage1); Reply1 = TestHelper.Generate <object>(); Message2 = new ExampleMessage2(); Type2 = typeof(ExampleMessage2); Reply2 = TestHelper.Generate <object>(); Handlers = new Dictionary <Type, Func <object, object> > { { Type1, o => Reply1 }, { Type2, o => Reply2 } }; //Create objects returned by mocks TestProbe = CreateTestProbe(); // Set up mocks TestProbeCreatorMock .SetupSequence(creator => creator.Create(this)) .Returns(TestProbe) .Returns(CreateTestProbe()); }
public void TestProbeChildActor_TestProbe_ReturnsSameResultOnEveryCall() { //arrange TestActorRef <TestProbeChildActor> sut = CreateTestProbeChildActorWithoutSupervisorStrategy(); //act global::Akka.TestKit.TestProbe result = sut.UnderlyingActor.TestProbe; //assert result.Should().BeSameAs(sut.UnderlyingActor.TestProbe); }
public void TestProbeChildActor_TestProbe_TestProbeIsForwardedMessages() { //arrange TestActorRef <TestProbeChildActor> sut = CreateTestProbeChildActorWithoutSupervisorStrategy(); object message = TestHelper.Generate <object>(); global::Akka.TestKit.TestProbe sender = CreateTestProbe(); //act global::Akka.TestKit.TestProbe result = sut.UnderlyingActor.TestProbe; //assert sut.Tell(message, sender); result.ExpectMsgFrom(sender, message); }
public TestBase() : base(AkkaConfig.Config) { //Create mocks TestProbeCreatorMock = new Mock <ITestProbeCreator>(); ExceptionWaiterMock = new Mock <IWaiter>(); // Create objects passed into sut constructor TestProbeCreator = TestProbeCreatorMock.Object; ExceptionWaiter = ExceptionWaiterMock.Object; ParentMessage1 = new ExampleMessage1(); ParentType1 = ParentMessage1.GetType(); ParentReply1 = TestHelper.Generate <object>(); ParentMessage2 = new ExampleMessage2(); ParentType2 = ParentMessage2.GetType(); ParentReply2 = TestHelper.Generate <object>(); Handlers = new Dictionary <Type, Func <object, object> > { { ParentType1, o => ParentReply1 }, { ParentType2, o => ParentReply2 } }; StopChildException = new ArithmeticException(TestHelper.GenerateString()); RestartChildException = new DivideByZeroException(TestHelper.GenerateString()); Decider = (e) => { if (e.GetType() == StopChildException.GetType()) { return(Directive.Stop); } if (e.GetType() == RestartChildException.GetType()) { return(Directive.Restart); } return(Directive.Escalate); }; //Create objects returned by mocks TestProbe = CreateTestProbe(); // Set up mocks TestProbeCreatorMock .SetupSequence(creator => creator.Create(this)) .Returns(TestProbe) .Returns(CreateTestProbe()); }