예제 #1
0
            public async Task IsValidForSubmission_When_Invalid_Should_SendNotificationToSupportTeam()
            {
                // Arrange
                var          costId     = Guid.NewGuid();
                const string message    = "Any message";
                const string costNumber = "PO12312313";

                EFContext.Add(new Cost
                {
                    Id         = costId,
                    CostNumber = costNumber
                });
                EFContext.SaveChanges();

                CostBuilderMock.Setup(cb => cb.IsValidForSubmittion(costId)).ReturnsAsync(new OperationResponse(false, message));

                // Act
                var result = await CostService.IsValidForSubmission(User, costId);

                // Assert
                result.Should().NotBeNull();
                result.Success.Should().Be(false);
                SupportNotificationServiceMock.Verify(sn =>
                                                      sn.SendSupportSubmissionFailedNotification(costNumber, null), Times.Once);
            }
예제 #2
0
            public async Task IsValidForSubmission_Always_Should_GetResultFromCostBuilder(bool isValid)
            {
                // Arrange
                var          costId  = Guid.NewGuid();
                const string message = "Any message";

                EFContext.Add(new Cost {
                    Id = costId
                });
                EFContext.SaveChanges();

                CostBuilderMock.Setup(cb => cb.IsValidForSubmittion(costId)).ReturnsAsync(new OperationResponse(isValid, message));

                // Act
                var result = await CostService.IsValidForSubmission(User, costId);

                // Assert
                result.Should().NotBeNull();
                result.Success.Should().Be(isValid);
            }