public async Task WhenEmployerHasNotSuppliedTheirBankDetails() { var request = new BankDetailsRepeatReminderEmailsRequest { ApplicationCutOffDate = _fixture.Create <DateTime>() }; _response = await _context.OuterApiClient.PostAsync($"email/bank-details-repeat-reminders", new StringContent(JsonSerializer.Serialize(request), Encoding.UTF8, "application/json")); _response.EnsureSuccessStatusCode(); }
public async Task Then_Send_Email_Command_Is_Handled( BankDetailsRepeatReminderEmailsRequest sendEmailRequest, [Frozen] Mock <IMediator> mockMediator, [Greedy] EmailController controller) { var controllerResult = await controller.SendBankDetailsRepeatReminderEmails(sendEmailRequest) as OkResult; controllerResult.Should().NotBeNull(); controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK); mockMediator .Verify(mediator => mediator.Send( It.Is <SendBankDetailsRepeatReminderEmailsCommand>(c => c.ApplicationCutOffDate.Equals(sendEmailRequest.ApplicationCutOffDate)), It.IsAny <CancellationToken>()), Times.Once); }
public async Task WhenTheCheckForAccountsWithoutBankDetailsIsTriggered() { const string url = "api/EmailCommand/bank-details-repeat-reminders"; _request = new BankDetailsRepeatReminderEmailsRequest { ApplicationCutOffDate = _applicationCutOffDate }; await TestContext.WaitFor( async (cancellationToken) => { _response = await EmployerIncentiveApi.Client.PostAsJsonAsync(url, _request, cancellationToken); }, (context) => HasExpectedSendBankDetailsRepeatReminderEmailEvents(context) ); _response.IsSuccessStatusCode.Should().BeTrue(); }
public async Task SendBankDetailsRepeatReminderEmails([FromBody] BankDetailsRepeatReminderEmailsRequest request) { await SendCommandAsync(new AccountVrfCaseStatusRemindersCommand(request.ApplicationCutOffDate)); }
public async Task <IActionResult> SendBankDetailsRepeatReminderEmails(BankDetailsRepeatReminderEmailsRequest request) { await _mediator.Send(new SendBankDetailsRepeatReminderEmailsCommand(request.ApplicationCutOffDate)); return(new OkResult()); }