Exemplo n.º 1
0
        public void AndValueIsNotSet_ThenMapsToNull()
        {
            var parameters = new SearchApprenticeshipParameters();
            var result     = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.Longitude.Should().BeNull();
        }
        public async Task <IHttpActionResult> Search([FromUri(Name = "")] SearchApprenticeshipParameters searchApprenticeshipParameters)
        {
            var results =
                await _searchOrchestrator.SearchApprenticeship(searchApprenticeshipParameters).ConfigureAwait(false);

            return(Ok(results));
        }
        public void WhenNotProvided_ThenPoplateRequestWithTheDefaultValue()
        {
            var parameters = new SearchApprenticeshipParameters();
            var result     = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.PageSize.Should().Be(100);
        }
Exemplo n.º 4
0
        public void AndValueIsNotSet_ThenMapsToFalse()
        {
            var parameters = new SearchApprenticeshipParameters();
            var result     = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.NationwideOnly.Should().Be(false);
        }
Exemplo n.º 5
0
        public void AndValueIsTrue_ThenMapsToTrue()
        {
            var parameters = new SearchApprenticeshipParameters {
                NationwideOnly = true
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.NationwideOnly.Should().Be(true);
        }
Exemplo n.º 6
0
        public void AndValueIsSet_ThenMapsToLongitude()
        {
            var expectedLongitude = 52.787815;
            var parameters        = new SearchApprenticeshipParameters {
                Longitude = expectedLongitude
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.Longitude.Should().Be(expectedLongitude);
        }
Exemplo n.º 7
0
        public void AndValueIsSet_ThenMapsToUkprn()
        {
            var ukprn      = 88888888;
            var parameters = new SearchApprenticeshipParameters {
                Ukprn = ukprn
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.Ukprn.Should().Be(ukprn);
        }
        public IEnumerable <string> AndMapExecutes(string frameworkCodes)
        {
            var parameters = new SearchApprenticeshipParameters {
                FrameworkLarsCodes = frameworkCodes
            };

            return(_mapper
                   .Map <SearchApprenticeshipVacanciesRequest>(parameters)
                   .FrameworkLarsCodes);
        }
        public void WhenNullOrEmpty_ThenReturnEmptyList(string standardCodes, string reason)
        {
            var parameters = new SearchApprenticeshipParameters()
            {
                StandardLarsCodes = standardCodes
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.StandardLarsCodes.Should().BeEmpty(reason);
        }
        public void WhenValidInput_ThenReturnMappedRequestObject(string standardCodes, int count, string reason)
        {
            var parameters = new SearchApprenticeshipParameters()
            {
                StandardLarsCodes = standardCodes
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.StandardLarsCodes.Count().Should().Be(count, reason);
        }
        public void AndValueIsSet_ThenMapsToDistanceInMiles()
        {
            var expectedDistance = 349;
            var parameters       = new SearchApprenticeshipParameters {
                DistanceInMiles = expectedDistance
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.DistanceInMiles.Should().Be(expectedDistance);
        }
        public void WhenProvided_ThenPopulateRequestWithTheGivenValue()
        {
            var expectedPageSize = 2;
            var parameters       = new SearchApprenticeshipParameters()
            {
                PageSize = expectedPageSize
            };
            var result = _mapper.Map <SearchApprenticeshipVacanciesRequest>(parameters);

            result.PageSize.Should().Be(expectedPageSize);
        }
        public void WhenCallingSearchApprenticeship()
        {
            _fixture = new Fixture();

            _searchApprenticeshipParameters = _fixture.Create <SearchApprenticeshipParameters>();
            _apprenticeshipSearchResponse   = _fixture.Create <ApprenticeshipSearchResponse>();
            var searchApprenticeshipVacanciesRequest  = _fixture.Create <SearchApprenticeshipVacanciesRequest>();
            var searchApprenticeshipVacanciesResponse = _fixture.Create <SearchApprenticeshipVacanciesResponse>();

            _expectedErrorMessage = _fixture.Create <string>();

            var mockMapper = new Mock <IMapper>();

            mockMapper
            .Setup(mapper => mapper.Map <SearchApprenticeshipVacanciesRequest>(_searchApprenticeshipParameters))
            .Returns(searchApprenticeshipVacanciesRequest);
            mockMapper
            .Setup(mapper => mapper.Map <ApprenticeshipSearchResponse>(searchApprenticeshipVacanciesResponse))
            .Returns(_apprenticeshipSearchResponse);

            var mockMediator = new Mock <IMediator>();

            mockMediator
            .Setup(mediator => mediator.Send(searchApprenticeshipVacanciesRequest, CancellationToken.None))
            .ReturnsAsync(searchApprenticeshipVacanciesResponse);

            var mockSettings = new Mock <IProvideSettings>();

            mockSettings
            .Setup(x => x.GetSetting(ApplicationSettingKeys.LiveApprenticeshipVacancyBaseUrlKey))
            .Returns(FAABaseUrl);

            _mockValidationExceptionBuilder = _fixture.Freeze <Mock <IValidationExceptionBuilder> >(composer => composer.Do(mock => mock
                                                                                                                            .Setup(builder => builder.Build(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()))
                                                                                                                            .Returns(new ValidationException(new List <ValidationFailure>
            {
                new ValidationFailure("", _expectedErrorMessage)
            }))
                                                                                                                            ));

            _orchestrator = new SearchApprenticeshipVacanciesOrchestrator(mockMediator.Object, mockMapper.Object, mockSettings.Object, _mockValidationExceptionBuilder.Object);
        }
        public async Task <ApprenticeshipSearchResponse> SearchApprenticeship(
            SearchApprenticeshipParameters apprenticeSearchParameters)
        {
            if (apprenticeSearchParameters == null)
            {
                throw _validationExceptionBuilder.Build(
                          ErrorCodes.SearchApprenticeships.InvalidRequest,
                          Domain.Validation.ErrorMessages.SearchApprenticeships.SearchApprenticeshipParametersIsNull,
                          ApprenticeSearchPropertyName);
            }

            var request  = _mapper.Map <SearchApprenticeshipVacanciesRequest>(apprenticeSearchParameters);
            var response = await _mediator.Send(request).ConfigureAwait(false);

            var results = _mapper.Map <ApprenticeshipSearchResponse>(response);


            foreach (ApprenticeshipSummary summary in results.Results)
            {
                summary.VacancyUrl = GetVacancyUrl(summary.VacancyReference);
            }

            return(results);
        }