public async Task CreatePayment_Handler_Test() { //Arrange Cpf cpf = "434.443.474-99"; var dueDate = DateTime.UtcNow; var tid = Guid.NewGuid(); var value = 20M; var payment = new Payment { Cpf = cpf.Value, DueDate = dueDate, Tid = tid, Value = value }; _mapper.Map <Payment>(Arg.Any <CreatePaymentModel.Request>()).Returns(payment); var service = GetInstance(); var request = new CreatePaymentModel.Request { Cpf = cpf.Value, DueDate = dueDate.ToString("yyyy-MM-ddTHH:mm:ss"), Value = value.ToString() }; //Act var result = await service.Handle(request, new System.Threading.CancellationToken()); //Assert Assert.NotNull(result); Assert.True(result.Success); Assert.Equal(payment.Tid, result.Tid); }
public bool IsNew(CreatePaymentModel.Request request) { var result = false; if (request.IsValid()) { var refDate = DateTime.UtcNow.ToString("yyyy-MM-dd HH:mm:ss"); var payments = GetPayments(new GetPaymentModel.Request { Cpf = request.Cpf, DueDate = refDate }).Result; var payment = _mapper.Map <Payment>(request); var found = payments.Where(p => p.Equals(payment)); result = !payments.HaveAny() || (payments.HaveAny() && !found.HaveAny()); } return(result); }
public async Task <IActionResult> Post(CreatePaymentModel.Request request) => await _controllerHelper.ReturnAsync((request) => _mediator.Send(request), request);