public void TestStopActors() { var results = new TestResults(); var beforeStartCountAccess = results.BeforeStartCountAccessCompletes(12); World.DefaultLogger.Log("Test: TestStopActors: starting actors"); var stoppables = SetUpActors(World, results); for (int idx = 0; idx < stoppables.Length; ++idx) { stoppables[idx].CreateChildren(); } var beforeStartCount = beforeStartCountAccess.ReadFrom <int>("value"); Assert.Equal(12, beforeStartCount); World.DefaultLogger.Log("Test: TestStopActors: stopping actors"); results.TerminatingAccessCompletes(0).WriteUsing("value", false); var stopCountAccess = results.StopCountAccessCompletes(12); for (int idx = 0; idx < stoppables.Length; ++idx) { stoppables[idx].Stop(); } var stopCount = stopCountAccess.ReadFromExpecting("value", 12); Assert.Equal(12, stopCount); World.DefaultLogger.Log("Test: TestStopActors: stopped actors"); World.DefaultLogger.Log("Test: TestStopActors: terminating world"); var terminatingStopCountAccess = results.TerminatingStopCountAccessCompletes(0); results.TerminatingAccessCompletes(0).WriteUsing("value", true); World.Terminate(); var terminatingStopCount = terminatingStopCountAccess.ReadFrom <int>("value"); Assert.Equal(0, terminatingStopCount); }
public void TestWorldTerminateToStopAllActors() { var results = new TestResults(); var beforeStartCountAccess = results.BeforeStartCountAccessCompletes(12); var stoppables = SetUpActors(World, results); for (int idx = 0; idx < stoppables.Length; ++idx) { stoppables[idx].CreateChildren(); } beforeStartCountAccess.ReadFrom <int>("value"); var terminatingStopAccess = results.TerminatingStopCountAccessCompletes(12); results.TerminatingAccessCompletes(0).WriteUsing("value", true); World.Terminate(); var terminatingStopCount = terminatingStopAccess.ReadFrom <int>("value"); Assert.Equal(12, terminatingStopCount); }