public void NoMatchingOrchestrator(string anarchyType) { //arrange var orchestrator = Get.MotherFor .MockAnarchyActionOrchestrator .OrchestratorWithScheduleNamed("testAnarchyType") .Build(); var sut = new AnarchyManagerNew(new [] { orchestrator }); //act var exception = Assert.Catch(() => sut.TriggerAction(anarchyType, null)); //assert exception.Should().BeOfType <AnarchyActionNotFoundException>(); orchestrator.Received(0).TriggerOnce(Arg.Any <TimeSpan?>()); }
public void MatchingOrchestrator(string anarchyType, int?durationSecs) { //arrange var orchestrator = Get.MotherFor .MockAnarchyActionOrchestrator .OrchestratorWithScheduleNamed("testAnarchyType") .Build(); var duration = durationSecs.HasValue ? TimeSpan.FromSeconds(durationSecs.Value) : (TimeSpan?)null; var sut = new AnarchyManagerNew(new [] { orchestrator }); //act sut.TriggerAction(anarchyType, duration); //assert orchestrator.Received(1).TriggerOnce(duration); }
public void SelectsFirstMatchingOrchestrator(string firstActionName, string secondActionName, int firstCount, int secondCount) { //arrange var schedule = new Schedule(); var orchestrators = Get.CustomBuilderFor.MockAnarchyActionOrchestrators .WithActionsNamed(firstActionName, secondActionName) .WithSchedules(schedule, schedule) .Build() .Select(orchestratorBuilder => orchestratorBuilder.Build()) .ToList(); var sut = new AnarchyManagerNew(orchestrators); //act sut.TriggerAction("firstActionName", TimeSpan.FromSeconds(1)); //assert orchestrators[0].Received(firstCount).TriggerOnce(Arg.Any <TimeSpan?>()); orchestrators[1].Received(secondCount).TriggerOnce(Arg.Any <TimeSpan?>()); }