public void RunExecutesPublishersWhenConditionIsMet() { var result = GenerateResultMock(); var logger = mocks.Create <ILogger>().Object; var childPublisher = mocks.Create <ITask>(MockBehavior.Strict).Object; Mock.Get(result).Setup(_result => _result.Clone()).Returns((IIntegrationResult)null).Verifiable(); Mock.Get(result).Setup(_result => _result.Merge(It.IsAny <IIntegrationResult>())).Verifiable(); Mock.Get(childPublisher).Setup(_childPublisher => _childPublisher.Run(null)).Verifiable(); var publisher = new ConditionalPublisher { Logger = logger, Tasks = new ITask[] { childPublisher }, Conditions = new IntegrationStatus[] { IntegrationStatus.Success } }; result.Status = IntegrationStatus.Success; publisher.Run(result); mocks.Verify(); }
public void RunExecutesPublishersWhenConditionIsMet() { var result = GenerateResultMock(); var logger = mocks.DynamicMock <ILogger>(); var childPublisher = mocks.StrictMock <ITask>(); Expect.Call(() => { childPublisher.Run(result); }); var publisher = new ConditionalPublisher { Logger = logger, Tasks = new ITask[] { childPublisher }, Conditions = new IntegrationStatus[] { IntegrationStatus.Success } }; mocks.ReplayAll(); result.Status = IntegrationStatus.Success; publisher.Run(result); mocks.VerifyAll(); }
public void RunDoesNotExecutePublishersWhenConditionIsNotMet() { var result = GenerateResultMock(); var logger = mocks.Create <ILogger>().Object; var childPublisher = mocks.Create <ITask>(MockBehavior.Strict).Object; var publisher = new ConditionalPublisher { Logger = logger, Tasks = new ITask[] { childPublisher }, Conditions = new IntegrationStatus[] { IntegrationStatus.Success } }; result.Status = IntegrationStatus.Failure; publisher.Run(result); mocks.Verify(); }