public async Task CreateProductOptionShouldReturnSuccessWhenCommandSuccess() { // Arrange _mediator.Setup(e => e.Send(It.IsAny <CreateProductOptionCommand>(), It.IsAny <CancellationToken>())).Returns(Task.CompletedTask); // Act var service = new ProductOptionService(_mapper.Object, _mediator.Object); var result = await service.CreateProductOption(new CreateProductOptionCommand(Guid.NewGuid(), "name", "desc")); // Assert Assert.AreEqual(result.IsSuccess, true); }
public async Task CreateProductOptionShouldReturnExeptionWhenCommandFail() { // Arrange _mediator.Setup(e => e.Send(It.IsAny <CreateProductOptionCommand>(), It.IsAny <CancellationToken>())).ThrowsAsync(new Exception("Exception error!")); // Act var service = new ProductOptionService(_mapper.Object, _mediator.Object); var result = await service.CreateProductOption(new CreateProductOptionCommand(Guid.NewGuid(), "name", "desc")); // Assert Assert.AreEqual(result.IsSuccess, false); Assert.AreEqual(result.FailureReason, "Exception error!"); }
public async Task CreateProductOptionShouldReturnGroupedValidationExeptionWhenCommandFail() { // Arrange var validationExceptions = new List <ValidationFailure>() { new ValidationFailure("p1", "error p1"), new ValidationFailure("p2", "error p2") }; _mediator.Setup(e => e.Send(It.IsAny <CreateProductOptionCommand>(), It.IsAny <CancellationToken>())).ThrowsAsync(new ValidationException(validationExceptions)); // Act var service = new ProductOptionService(_mapper.Object, _mediator.Object); var result = await service.CreateProductOption(new CreateProductOptionCommand(Guid.NewGuid(), "name", "desc")); // Assert Assert.AreEqual(result.IsSuccess, false); Assert.IsTrue(result.FailureReason.Contains("error p1")); Assert.IsTrue(result.FailureReason.Contains("error p2")); }