public IncentiveApplicationSubmittedSteps(TestContext testContext) : base(testContext) { _testContext = testContext; _fixture = new Fixture(); _createRequest = _fixture.Create <CreateIncentiveApplicationRequest>(); _submitRequest = _fixture.Create <SubmitIncentiveApplicationRequest>(); _submitRequest.IncentiveApplicationId = _createRequest.IncentiveApplicationId; _submitRequest.AccountId = _createRequest.AccountId; }
public async Task <IActionResult> SubmitIncentiveApplication([FromBody] SubmitIncentiveApplicationRequest request) { try { await SendCommandAsync(new SubmitIncentiveApplicationCommand(request.IncentiveApplicationId, request.AccountId, request.DateSubmitted, request.SubmittedByEmail, request.SubmittedByName)); return(Ok()); } catch (InvalidRequestException) { return(BadRequest()); } }
public async Task <IActionResult> SubmitIncentiveApplication([FromBody] SubmitIncentiveApplicationRequest request) { try { await SendCommandAsync(new SubmitIncentiveApplicationCommand(request.IncentiveApplicationId, request.AccountId, request.DateSubmitted, request.SubmittedByEmail, request.SubmittedByName)); return(Ok()); } catch (UlnAlreadySubmittedException) { return(Conflict("Application contains a ULN which has already been submitted")); } catch (InvalidRequestException) { return(BadRequest()); } }
public IncentiveApplicationSubmittedSteps(TestContext testContext) : base(testContext) { _testContext = testContext; _fixture = new Fixture(); _firstApprenticeshipId = _fixture.Create <long>(); _secondApprenticeshipId = _firstApprenticeshipId + 1; var apprenticeships = new List <IncentiveApplicationApprenticeshipDto> { _fixture.Build <IncentiveApplicationApprenticeshipDto>().With(p => p.ApprenticeshipId, _firstApprenticeshipId).With(p => p.PlannedStartDate, new DateTime(2021, 5, 1)).With(p => p.EmploymentStartDate, new DateTime(2021, 04, 01)).Create(), _fixture.Build <IncentiveApplicationApprenticeshipDto>().With(p => p.ApprenticeshipId, _secondApprenticeshipId).With(p => p.PlannedStartDate, new DateTime(2021, 7, 1)).With(p => p.EmploymentStartDate, new DateTime(2021, 06, 01)).Create() }; _createRequest = _fixture .Build <CreateIncentiveApplicationRequest>() .With(r => r.Apprenticeships, apprenticeships) .Create(); _submitRequest = _fixture.Build <SubmitIncentiveApplicationRequest>().With(r => r.DateSubmitted, new DateTime(2021, 5, 31)).Create(); _submitRequest.IncentiveApplicationId = _createRequest.IncentiveApplicationId; _submitRequest.AccountId = _createRequest.AccountId; }
public async Task WhenTheySubmitApplicationOn(string date) { var submissionDate = DateTime.ParseExact(date, "yyyy-MM-d", CultureInfo.InvariantCulture); _submitRequest = _fixture.Build <SubmitIncentiveApplicationRequest>() .With(r => r.DateSubmitted, submissionDate) .Create(); _submitRequest.IncentiveApplicationId = _applicationModel.Id; _submitRequest.AccountId = _accountModel.Id; var url = $"applications/{_submitRequest.IncentiveApplicationId}"; await _testContext.WaitFor( async (cancellationToken) => { _response = await EmployerIncentiveApi.Patch(url, _submitRequest); }, (context) => HasExpectedEvents(context), assertOnError : false ); _response.StatusCode.Should().Be(HttpStatusCode.OK); }