public void TestWherePolicyIsSync() { // Arrange Mock <IDummyService1> service1Mock = new Mock <IDummyService1>(); Mock <IDummyService2> service2Mock = new Mock <IDummyService2>(); PolicyScopeMock policyScopeMock = PolicyScopeMock .SyncPolicy("Primary") .WithService(service1Mock.Object) .WithResultType <int>() .SyncPolicy("Secondary") .WithServices(service1Mock.Object, service2Mock.Object) .WithNoResult() .Build(); MultipleUsage logic = new MultipleUsage(policyScopeMock.Object); // Act logic.Run(); // Assert policyScopeMock .WherePolicyIsSync() .VerifyRun(3); policyScopeMock .WherePolicyIsAsync() .VerifyRunNever(); }
public void TestRunWithResult3Service() { // Arrange Mock <IDummyService1> dummyServiceMock1 = new Mock <IDummyService1>(); dummyServiceMock1 .Setup(d => d.Calculate()) .Returns(1 << 0); Mock <IDummyService2> dummyServiceMock2 = new Mock <IDummyService2>(); dummyServiceMock2 .Setup(d => d.Calculate()) .Returns(1 << 1); Mock <IDummyService3> dummyServiceMock3 = new Mock <IDummyService3>(); dummyServiceMock3 .Setup(d => d.Calculate()) .Returns(1 << 2); var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithNoService() .WithResultType <int>() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act and assert Assert.Throws <PolicyScopeMockException>(() => { int result = logic.RunWithResult3Service(); }); }
public void TestRunWithResult2Service() { // Arrange Mock <IDummyService1> dummyServiceMock1 = new Mock <IDummyService1>(); dummyServiceMock1 .Setup(d => d.Calculate()) .Returns(1 << 0); Mock <IDummyService2> dummyServiceMock2 = new Mock <IDummyService2>(); dummyServiceMock2 .Setup(d => d.Calculate()) .Returns(1 << 1); var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithServices(dummyServiceMock1.Object, dummyServiceMock2.Object) .WithResultType <int>() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act int result = logic.RunWithResult2Service(); // Assert Assert.Equal((1 << 2) - 1, result); Assert.Equal((1 << 2) - 1, logic.LatestResult); policyScopeMock.VerifyRunOnce(); }
public async Task TestNoAsyncPolicyFound() { // Arrange var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithNoService() .WithNoResult() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act and assert await Assert.ThrowsAsync<PolicyScopeMockException>(async () => { await logic.RunWithNoResultNoServiceAsync(); }); }
public void TestRunWithResultNoService() { // Arrange var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithNoService() .WithNoResult() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act and assert Assert.Throws <PolicyScopeMockException>(() => { int result = logic.RunWithResultNoService(); }); }
public void TestRunWithNoResultNoService() { // Arrange var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithNoService() .WithNoResult() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act logic.RunWithNoResultNoService(); // Assert Assert.Equal((1 << 0) - 1, logic.LatestResult); policyScopeMock.VerifyRunOnce(); }
public void TestRunWithNoResult4Service() { // Arrange Mock <IDummyService1> dummyServiceMock1 = new Mock <IDummyService1>(); dummyServiceMock1 .Setup(d => d.Calculate()) .Returns(1 << 0); Mock <IDummyService2> dummyServiceMock2 = new Mock <IDummyService2>(); dummyServiceMock2 .Setup(d => d.Calculate()) .Returns(1 << 1); Mock <IDummyService3> dummyServiceMock3 = new Mock <IDummyService3>(); dummyServiceMock3 .Setup(d => d.Calculate()) .Returns(1 << 2); Mock <IDummyService4> dummyServiceMock4 = new Mock <IDummyService4>(); dummyServiceMock4 .Setup(d => d.Calculate()) .Returns(1 << 3); var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithServices(dummyServiceMock1.Object, dummyServiceMock2.Object, dummyServiceMock3.Object, dummyServiceMock4.Object) .WithNoResult() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act logic.RunWithNoResult4Service(); // Assert Assert.Equal((1 << 4) - 1, logic.LatestResult); policyScopeMock.VerifyRunOnce(); }
public void TestRunWithNoResult1Service() { // Arrange Mock <IDummyService1> dummyServiceMock1 = new Mock <IDummyService1>(); dummyServiceMock1 .Setup(d => d.Calculate()) .Returns(1 << 0); var policyScopeMock = PolicyScopeMock .SyncPolicy(PolicyNames.SyncPolicyName) .WithNoService() .WithNoResult() .Build(); Logic logic = new Logic(policyScopeMock.Object); // Act and assert Assert.Throws <PolicyScopeMockException>(() => { logic.RunWithNoResult1Service(); }); }