Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,26 +15,6 @@ namespace SFA.DAS.ProviderCommitments.Web.UnitTests.Controllers.CohortController
[TestFixture]
public class WhenAddingACohortWithDraftApprentice
{
[Test]
public void AndRedirectTargetIsCourse_ThenRedirectedToSelectCourse()
{
var fixture = new WhenAddingACohortWithDraftApprenticeFixture().SetRedirectTarget(CreateCohortRedirectModel.RedirectTarget.SelectCourse);

var result = fixture.Act() as RedirectToActionResult;

result.ActionName.Should().Be("SelectCourse");
}

[Test]
public void AndRedirectTargetIsHowTo_ThenRedirectedToHowTo()
{
var fixture = new WhenAddingACohortWithDraftApprenticeFixture().SetRedirectTarget(CreateCohortRedirectModel.RedirectTarget.SelectHowTo);

var result = fixture.Act() as RedirectToActionResult;

result.ActionName.Should().Be("SelectHowToAddApprentice");
}

[Test]
public void AndRedirectTargetIsSelectLearner_ThenRedirectedToSelectLearner()
{
Expand Down Expand Up @@ -93,7 +73,7 @@ public WhenAddingACohortWithDraftApprenticeFixture()
CourseCode = "ABC123"
};

_redirectModel = new CreateCohortRedirectModel { RedirectTo = CreateCohortRedirectModel.RedirectTarget.SelectCourse };
_redirectModel = new CreateCohortRedirectModel { RedirectTo = CreateCohortRedirectModel.RedirectTarget.SelectLearner };
var viewModel = new AddDraftApprenticeshipViewModel
{
DeliveryModel = DeliveryModel.Regular,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ public WhenGettingSelectAddDraftApprenticeshipJourneyFixture()
ViewModel.ProviderId = ProviderId;
ViewModel.HasExistingCohort = true;
ViewModel.HasCreateCohortPermission = true;
ViewModel.UseLearnerData = true;

var modelMapperMock = new Mock<IModelMapper>();
modelMapperMock
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,6 @@ public async Task PostConfirmEmployerViewModel_WithValidModel_WithConfirmFalse_S
result.VerifyReturnsRedirectToActionResult().WithActionName("SelectEmployer");
}

[Test]
public async Task PostConfirmEmployerViewModel_WithValidModel_WithConfirmTrueAndUseLearnerDataTrue_ShouldCreateCohortAndRedirectToCohortDetailsPage()
{
var fixture = new PostConfirmEmployerFixture()
.WithConfirmTrue()
.WithUseLearnerDataTrue()
.WithHasNoDeclaredStandards(false);

var result = await fixture.Act();
fixture.VerifyReturnsRedirect(result, true);
}

[Test]
public async Task PostConfirmEmployerViewModel_WithValidModel_WithConfirmTrue_ShouldCreateCohortAndRedirectToCohortDetailsPage()
{
Expand All @@ -44,7 +32,7 @@ public async Task PostConfirmEmployerViewModel_WithValidModel_WithConfirmTrue_Sh
.WithHasNoDeclaredStandards(false);

var result = await fixture.Act();
fixture.VerifyReturnsRedirect(result, false);
fixture.VerifyReturnsRedirect(result);
}

[Test]
Expand Down Expand Up @@ -92,7 +80,7 @@ public PostConfirmEmployerFixture()
.Setup(x => x.CreateCohort(emptyCohortRequest, It.IsAny<CancellationToken>()))
.ReturnsAsync(emptyCohortResponse);

_redirectUrl = $"{providerId}/reservations/{_viewModel.EmployerAccountLegalEntityPublicHashedId}/select?useLearnerData=";
_redirectUrl = $"{providerId}/reservations/{_viewModel.EmployerAccountLegalEntityPublicHashedId}/select";
var linkGenerator = new Mock<ILinkGenerator>();
linkGenerator.Setup(x => x.ReservationsLink(It.Is<string>(p=>p.StartsWith(_redirectUrl)))).Returns(_redirectUrl);

Expand All @@ -117,15 +105,10 @@ public PostConfirmEmployerFixture WithConfirmTrue()
_viewModel.Confirm = true;
return this;
}
public PostConfirmEmployerFixture WithUseLearnerDataTrue()
{
_viewModel.UseLearnerData = true;
return this;
}

public void VerifyReturnsRedirect(IActionResult redirectResult, bool useLearnerData)
public void VerifyReturnsRedirect(IActionResult redirectResult)
{
var equals = redirectResult.VerifyReturnsRedirect().Url.Equals(_redirectUrl + useLearnerData);
var equals = redirectResult.VerifyReturnsRedirect().Url.Equals(_redirectUrl);
}

public static void VerifyNoDeclaredStandardsRedirect(IActionResult redirectResult)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ public void Then_RedirectTo_SelectEmployer_When_Selected_Option_Is_New_Cohort()
result.VerifyReturnsRedirectToActionResult().WithActionName("SelectEmployer");
var action = result as RedirectToActionResult;
action.RouteValues["providerId"].Should().Be(fixture.ViewModel.ProviderId);
action.RouteValues["useLearnerData"].Should().Be(fixture.ViewModel.UseLearnerData);
}

[Test]
Expand All @@ -34,7 +33,6 @@ public void Then_RedirectTo_ChooseCohort_When_Selected_Option_Is_ExistingCohort(
result.VerifyReturnsRedirectToActionResult().WithActionName("ChooseCohort");
var action = result as RedirectToActionResult;
action.RouteValues["providerId"].Should().Be(fixture.ViewModel.ProviderId);
action.RouteValues["useLearnerData"].Should().Be(fixture.ViewModel.UseLearnerData);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,6 @@ namespace SFA.DAS.ProviderCommitments.Web.UnitTests.Controllers.CohortController
[TestFixture]
public class WhenPostingSelectDraftApprenticeshipsEntryMethod
{
[Test]
public void Then_RedirectTo_SelectJourney_When_Selected_Option_Is_Manual()
{
var fixture = new WhenPostingSelectDraftApprenticeshipsEntryMethodFixture();

var result = fixture.Manual().Act();

result.VerifyReturnsRedirectToActionResult().WithActionName(nameof(CohortController.SelectAddDraftApprenticeshipJourney));
}

[Test]
public void Then_RedirectTo_FileUploadInform_When_Selected_Option_Is_BulkCsv()
Expand All @@ -39,7 +30,6 @@ public void Then_RedirectTo_SelectAddDraftApprenticeshipJourney_When_Selected_Op
var result = fixture.ILR().Act();

result.VerifyReturnsRedirectToActionResult()
.WithRouteValue("UseLearnerData", true)
.WithActionName(nameof(CohortController.SelectAddDraftApprenticeshipJourney));
}
}
Expand All @@ -58,12 +48,6 @@ public WhenPostingSelectDraftApprenticeshipsEntryMethodFixture()
Mock.Of<IEncodingService>(),Mock.Of<IOuterApiService>(),Mock.Of<IAuthorizationService>(), Mock.Of<ILogger<CohortController>>());
}

public WhenPostingSelectDraftApprenticeshipsEntryMethodFixture Manual()
{
_viewModel.Selection = AddDraftApprenticeshipEntryMethodOptions.Manual;
return this;
}

public WhenPostingSelectDraftApprenticeshipsEntryMethodFixture BulkCsv()
{
_viewModel.Selection = AddDraftApprenticeshipEntryMethodOptions.BulkCsv;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
using SFA.DAS.ProviderCommitments.Interfaces;
using SFA.DAS.ProviderCommitments.Web.Controllers;
using SFA.DAS.ProviderCommitments.Web.Models;
using SFA.DAS.ProviderCommitments.Web.Models.Cohort;
using SFA.DAS.ProviderUrlHelper;

namespace SFA.DAS.ProviderCommitments.Web.UnitTests.Controllers.CohortControllerTests;
Expand All @@ -13,19 +12,16 @@ namespace SFA.DAS.ProviderCommitments.Web.UnitTests.Controllers.CohortController
public class WhenSelectingHowToAddApprentice
{
[Test]
public void ThenReturnsView()
public void ThenReturnsRedirectResult()
{
var fixture = new WhenSelectingHowToAddApprenticeFixture();

var result = fixture.Act() as ViewResult;
var result = fixture.Act() as RedirectToActionResult;

result.Should().NotBeNull();
result.Model.GetType().Should().Be(typeof(SelectHowToAddFirstApprenticeshipJourneyViewModel));
var model = result.Model as SelectHowToAddFirstApprenticeshipJourneyViewModel;
model.Should().NotBeNull();
model.ProviderId.Should().Be(fixture.Request.ProviderId);
model.EmployerAccountLegalEntityPublicHashedId.Should().Be(fixture.Request.EmployerAccountLegalEntityPublicHashedId);
model.CacheKey.Should().Be(fixture.Request.CacheKey);
result.RouteValues["ProviderId"].Should().Be(fixture.Request.ProviderId);
result.RouteValues["EmployerAccountLegalEntityPublicHashedId"].Should().Be(fixture.Request.EmployerAccountLegalEntityPublicHashedId);
result.RouteValues["CacheKey"].Should().Be(fixture.Request.CacheKey);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -153,11 +153,8 @@ public DraftApprenticeshipControllerTestFixture()
ULN = "XXXX"
};

_redirectToAddAnotherModelWithCourse = autoFixture.Build<AddAnotherApprenticeshipRedirectModel>()
.With(x => x.UseLearnerData, false).Create();

_redirectToAddAnotherModelWithLearner = autoFixture.Build<AddAnotherApprenticeshipRedirectModel>()
.With(x => x.UseLearnerData, true).Create();
.Create();

_viewSelectOptionsViewModel = autoFixture.Build<ViewSelectOptionsViewModel>().Create();

Expand All @@ -166,8 +163,7 @@ public DraftApprenticeshipControllerTestFixture()
.With(x => x.ChangeOfPartyRequestId, default(long?))
.Create();

_apiModelException = new CommitmentsApiModelException(new List<ErrorDetail>()
{new("Name", "Cannot be more than...")});
_apiModelException = new CommitmentsApiModelException([new("Name", "Cannot be more than...")]);

_mediator = new Mock<IMediator>();
_mediator.Setup(x => x.Send(It.IsAny<GetTrainingCoursesQueryRequest>(), It.IsAny<CancellationToken>()))
Expand All @@ -189,10 +185,7 @@ public DraftApprenticeshipControllerTestFixture()
_modelMapper.Setup(x => x.Map<UpdateDraftApprenticeshipApimRequest>(It.IsAny<ViewSelectOptionsViewModel>()))
.ReturnsAsync(_updateDraftApprenticeshipRequest);

_modelMapper.Setup(x => x.Map<AddAnotherApprenticeshipRedirectModel>(It.Is<BaseReservationsAddDraftApprenticeshipRequest>(p=>p.UseLearnerData == false)))
.ReturnsAsync(_redirectToAddAnotherModelWithCourse);

_modelMapper.Setup(x => x.Map<AddAnotherApprenticeshipRedirectModel>(It.Is<BaseReservationsAddDraftApprenticeshipRequest>(p => p.UseLearnerData == true)))
_modelMapper.Setup(x => x.Map<AddAnotherApprenticeshipRedirectModel>(It.IsAny<BaseReservationsAddDraftApprenticeshipRequest>()))
.ReturnsAsync(_redirectToAddAnotherModelWithLearner);

_commitmentsApiClient = new Mock<ICommitmentsApiClient>();
Expand All @@ -218,7 +211,6 @@ public DraftApprenticeshipControllerTestFixture()
});

_configurationSection = new Mock<IConfigurationSection>();
SetupIlrConfigurationSection(false);

_configuration = new Mock<IConfiguration>();
_configuration.Setup(c => c.GetSection("ILRFeaturesEnabled")).Returns(_configurationSection.Object);
Expand All @@ -239,12 +231,6 @@ public DraftApprenticeshipControllerTestFixture()
.Returns((string url) => "http://reservations/" + url);
}

public DraftApprenticeshipControllerTestFixture SetupIlrConfigurationSection(bool status)
{
_configurationSection.Setup(s => s.Value).Returns(status.ToString().ToLower);
return this;
}

public DraftApprenticeshipControllerTestFixture SetupStartDateOverlap(bool overlapStartDate, bool overlapEndDate)
{
_validateUlnOverlapOnStartDateResult = new Infrastructure.OuterApi.Responses.ValidateUlnOverlapOnStartDateQueryResult
Expand Down Expand Up @@ -292,12 +278,6 @@ public async Task<DraftApprenticeshipControllerTestFixture> AddNewDraftApprentic
return this;
}

public DraftApprenticeshipControllerTestFixture SetUseLearnerData(bool useLearnerData)
{
_getReservationIdForAddAnotherApprenticeRequest.UseLearnerData = useLearnerData;
return this;
}

public DraftApprenticeshipControllerTestFixture GetReservationId(string transferSenderId = null)
{
if (transferSenderId != null)
Expand All @@ -314,13 +294,6 @@ public DraftApprenticeshipControllerTestFixture GotoSelectHowPage()
return this;
}

public DraftApprenticeshipControllerTestFixture PostToAddAnotherSelectionMethod(AddAnotherDraftApprenticeshipJourneyOptions? option)
{
_selectAddAnotherApprenticeshipJourneyViewModel.Selection = option;
_actionResult = _controller.AddAnotherSelectMethod(_selectAddAnotherApprenticeshipJourneyViewModel);
return this;
}

public async Task<DraftApprenticeshipControllerTestFixture> EditDraftApprenticeship()
{
_modelMapper.Setup(x => x.Map<IDraftApprenticeshipViewModel>(_draftApprenticeshipRequest))
Expand Down Expand Up @@ -463,13 +436,6 @@ public DraftApprenticeshipControllerTestFixture SetupTempDraftApprenticeship()
return this;
}

public DraftApprenticeshipControllerTestFixture SetupUseLearnerData(bool useLearnerData)
{
_getReservationIdForAddAnotherApprenticeRequest.UseLearnerData = useLearnerData;
_reservationsAddDraftApprenticeshipRequest.UseLearnerData = useLearnerData;
return this;
}

public void VerifyViewModelFromTempDataHasDeliveryModelAndCourseValuesSet()
{
var model = _actionResult.VerifyReturnsViewModel().WithModel<AddDraftApprenticeshipViewModel>();
Expand Down Expand Up @@ -637,7 +603,6 @@ public DraftApprenticeshipControllerTestFixture VerifyReturnsSelectHowViewModelW
model.ProviderId.Should().Be(_getReservationIdForAddAnotherApprenticeRequest.ProviderId);
model.CohortReference.Should().Be(_getReservationIdForAddAnotherApprenticeRequest.CohortReference);
model.AccountLegalEntityHashedId.Should().Be(_getReservationIdForAddAnotherApprenticeRequest.AccountLegalEntityHashedId);
model.UseLearnerData.Should().Be(true);

return this;
}
Expand All @@ -647,13 +612,6 @@ public DraftApprenticeshipControllerTestFixture VerifyRedirectedToGetReservation
_actionResult.VerifyReturnsRedirectToActionResult().WithActionName("GetReservationId");
return this;
}

public DraftApprenticeshipControllerTestFixture VerifyRouteValueContainsUseLearnerDataAs(bool useLearnerData)
{
var redirectResult = _actionResult as RedirectToActionResult;
redirectResult.RouteValues.Should().Contain("useLearnerData", useLearnerData);
return this;
}

public DraftApprenticeshipControllerTestFixture VerifyRedirectedToSelectDeliveryModelPage()
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,74 +67,19 @@ public async Task AndWhenReturningToPageAfterChangingTheCourseOrDeliveryModel()
}

[Test]
public async Task AndWhenCallingTheAddNewDraftApprenticeshipEndpointWithDeliveryModelToggleWeRedirectToSelectCourse()
public async Task AndWhenCallingTheAddNewDraftApprenticeshipEndpointRedirectsToSelectLearner()
{
_fixture.SetupUseLearnerData(false);
await _fixture.AddNewDraftApprenticeshipWithReservation();
_fixture.VerifyRedirectedToSelectCoursePage();
}

[Test]
public async Task AndWhenCallingTheAddNewDraftApprenticeshipEndpointWithIlrFeatureOnAndUseLearnerDataAsTrueRedirectsToSelectLearner()
{
_fixture.SetupUseLearnerData(true);
_fixture.SetupIlrConfigurationSection(true);
await _fixture.AddNewDraftApprenticeshipWithReservation();
_fixture.VerifyRedirectedToSelectLearnerPage();
}

[Test]
public async Task AndWhenCallingTheAddNewDraftApprenticeshipEndpointWithIlrFeatureOnAndUseLearnerDataAsFalseRedirectsToSelectCourse()
{
_fixture.SetupUseLearnerData(true);
_fixture.SetupIlrConfigurationSection(false);
await _fixture.AddNewDraftApprenticeshipWithReservation();
_fixture.VerifyRedirectedToSelectCoursePage();
}


[TestCase(true)]
[TestCase(false)]
public async Task AndWhenCallingTheAddNewDraftApprenticeshipEndpointWithILRFeatureOffRedirectsToSelectCourse(bool useLearnerData)
{
_fixture.SetupUseLearnerData(useLearnerData);
_fixture.SetupIlrConfigurationSection(false);
await _fixture.AddNewDraftApprenticeshipWithReservation();
_fixture.VerifyRedirectedToSelectCoursePage();
}

[Test]
public void AndWhenCallingTheGetReservationIdEndpointRedirectToReservationsPage()
{
_fixture.GetReservationId();
_fixture.VerifyRedirectedToReservationsPage();
}

[Test]
public void AndWhenGoingToSelectHowPageWithUseLearnerDataAsFalseThenRedirectToGetReservationIdEndpoint()
{
_fixture.SetupUseLearnerData(false);
_fixture.GotoSelectHowPage();
_fixture.VerifyRedirectedToGetReservationIdEndpoint();
}

[Test]
public void AndWhenGoingToSelectHowPageWithUseLearnerDataAsTrueThenReturnSelectHowView()
{
_fixture.SetupUseLearnerData(true);
var result = _fixture.GotoSelectHowPage();
result.VerifyReturnsSelectHowViewModelWithCorrectValues();
}

[TestCase(AddAnotherDraftApprenticeshipJourneyOptions.Ilr, true)]
[TestCase(AddAnotherDraftApprenticeshipJourneyOptions.Manual, false)]
public async Task AndWhenAddApprenticeshipViaIlrThenRedirectToSelectFromIlrPage(AddAnotherDraftApprenticeshipJourneyOptions option, bool expected)
{
_fixture.PostToAddAnotherSelectionMethod(option);
_fixture.VerifyRedirectedToGetReservationIdEndpoint();
_fixture.VerifyRouteValueContainsUseLearnerDataAs(expected);
}

[Test]
public void AndWhenCallingTheGetReservationIdEndpointRedirectToReservationsPageWithTransferSender()
{
Expand Down
Loading
Loading