示例#1
0
        public void ThenMapWageUnit(string wageType, ApiTypes.WageUnit wageUnit)
        {
            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.Wage = FixtureInstance.Build <Wage>().With(w => w.WageType, wageType).Create();

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.WageUnit.Should().Be(wageUnit);
        }
示例#2
0
        public void AndWageTypeIsUnspecified()
        {
            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.Wage = FixtureInstance.Build <Wage>()
                               .With(w => w.WageType, RecruitApprenticeshipMapper.UnspecifiedWageType)
                               .Create();

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.WageText.Should().Be(RecruitApprenticeshipMapper.UnknownText);
        }
示例#3
0
        public void AndWageTypeIsFixedWage()
        {
            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.Wage = FixtureInstance.Build <Wage>()
                               .With(w => w.WageType, RecruitApprenticeshipMapper.FixedWageType)
                               .Create();

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.WageText.Should()
            .Be(GetFormattedCurrencyString(LiveVacancy.Wage.FixedWageYearlyAmount.GetValueOrDefault()));
        }
示例#4
0
        public void ThenMapDuration(int duration, string unit, string expectedOutput)
        {
            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.Wage = FixtureInstance.Build <Wage>()
                               .With(w => w.Duration, duration)
                               .With(w => w.DurationUnit, unit)
                               .Create();

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.ExpectedDuration.Should().Be(expectedOutput);
        }
        public void ThanMapVacancyUrl()
        {
            var baseUrl = FixtureInstance.Create <string>();

            ProvideSettingsMock
            .Setup(p => p.GetSetting(ApplicationSettingKeys.LiveApprenticeshipVacancyBaseUrlKey))
            .Returns(baseUrl);
            var sut = GetRecruitApprecticeshipMapper();

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.VacancyUrl.Should().Be($"{baseUrl}/{LiveVacancy.VacancyReference}");
        }
示例#6
0
        public void ThenMapTrainingType(string trainingType, ApiTypes.TrainingType expectedOuput)
        {
            TrainingDetailServiceMock
            .Setup(t => t.GetFrameworkDetailsAsync(It.IsAny <int>()))
            .ReturnsAsync(FixtureInstance.Create <Framework>());
            TrainingDetailServiceMock
            .Setup(t => t.GetStandardDetailsAsync(It.IsAny <int>()))
            .ReturnsAsync(FixtureInstance.Create <Standard>());

            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.ProgrammeType = trainingType;

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.TrainingType.Should().Be(expectedOuput);
        }
示例#7
0
        public void AndTrainingTypeIsFramework()
        {
            var framework = FixtureInstance.Create <Framework>();

            TrainingDetailServiceMock
            .Setup(t => t.GetFrameworkDetailsAsync(It.IsAny <int>()))
            .ReturnsAsync(framework);

            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.ProgrammeType = "Framework";

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            mappedVacancy.TrainingTitle.Should().Be(framework.Title);

            TrainingDetailServiceMock.Verify(t => t.GetStandardDetailsAsync(It.IsAny <int>()), Times.Never);
        }
示例#8
0
        public void AndWageTypeIsNationalMinimumWageForApprentices()
        {
            var minWage     = 3.7m;
            var weeklyHours = 40;

            MinimumWageServiceMock
            .Setup(s => s.GetWageRange(It.IsAny <DateTime>()))
            .Returns <DateTime>(NationalMinimumWageService.GetHourlyRates);

            var sut = GetRecruitApprecticeshipMapper();

            LiveVacancy.Wage = FixtureInstance.Build <Wage>()
                               .With(w => w.WageType, RecruitApprenticeshipMapper.NationalMinimumWageForApprenticesWageType)
                               .With(w => w.WeeklyHours, weeklyHours)
                               .Create();

            var mappedVacancy = sut.MapFromRecruitVacancy(LiveVacancy).Result;

            var expectedOutput = GetFormattedCurrencyString(minWage * weeklyHours);

            mappedVacancy.WageText.Should().Be(expectedOutput);
        }