Пример #1
0
        public void Calling_HolidaysService_WithSpecifiedTypes_Should_ReturnHolidaysWithCorrectTypes()
        {
            // Arrange
            var country       = "us";
            var year          = 2014;
            var expectedCount = 21;

            // Act
            var holidaysService = new HolidaysService(Config.AccessKey, Config.SecretKey);

            holidaysService.Types = HolidayType.Christian | HolidayType.Buddhism;
            var result = holidaysService.HolidaysForCountry(country, year);
            var sample = result.FirstOrDefault();

            // Assert
            Assert.AreEqual(expectedCount, result.Count);
            Assert.IsTrue(result.All(x => x.Types.Contains("Christian") || x.Types.Contains("Buddhism")));
            Assert.IsTrue(result.All(x => x.Country.Id == country));
            Assert.IsNotNull(sample.Description);
            Assert.IsNotEmpty(sample.Description);
            Assert.IsNotNull(sample.Uid);
            Assert.IsNotEmpty(sample.Uid);
            Assert.IsNotNull(sample.Url);
            Assert.IsNotNull(sample.Url.AbsoluteUri);
            Assert.IsNotEmpty(sample.Url.AbsoluteUri);
        }
Пример #2
0
        public void Calling_HolidaysService_WithCountry_And_WithYear_Should_ReturnHolidays()
        {
            // Arrange
            var country         = "us";
            var year            = 2014;
            var expectedHoliday = "New Year's Day";
            var expectedUid     = "0007d600000007de";
            var expectedUrl     = new Uri("http://www.timeanddate.com/holidays/us/new-year-day");
            var expectedId      = 2006;
            var expectedDate    = new DateTime(2014, 1, 1);

            // Act
            var holidaysService = new HolidaysService(Config.AccessKey, Config.SecretKey);
            var result          = holidaysService.HolidaysForCountry(country, year);
            var firstHoliday    = result.FirstOrDefault();

            // Assert
            Assert.IsNotNull(firstHoliday);
            Assert.AreEqual(expectedHoliday, firstHoliday.Name);
            Assert.AreEqual(expectedUid, firstHoliday.Uid);
            Assert.AreEqual(expectedUrl, firstHoliday.Url);

            Assert.AreEqual(expectedId, firstHoliday.Id);
            Assert.IsTrue(expectedDate.Equals(firstHoliday.Date.DateTime.DateTime));
        }
Пример #3
0
        public HolidayTests(ITestOutputHelper output)
        {
            _output = output;
            var setup = new SetUp();

            setup.Initialize();
            _context = setup.HolidayDbContext;
            var mapper      = setup.Mapper;
            var userManager = setup.InitializeUserManager();

            _holidaysCount = setup.GetCount("holidays");
            _configuration = setup.GetConfiguration();
            _timeService   = new TimeService();
            var mockUserService     = new Mock <IUserService>().Object;
            var mockOvertimeUtility = new Mock <IOvertimeUtility>().Object;

            _holidaysRepository  = new HolidaysRepository(_context);
            _employeesRepository = new EmployeesRepository(_context, userManager);
            _clientsRepository   = new ClientsRepository(_context);
            var holidayGuidsRepository          = new HolidayGuidsRepository(_context);
            var mockNotificationSettingsService = new Mock <INotificationSettingsService>().Object;

            _employeesService = new EmployeesService(_employeesRepository, mapper, mockOvertimeUtility, _timeService,
                                                     mockUserService, mockNotificationSettingsService, _configuration);
            _holidaysService = new HolidaysService(_holidaysRepository, _employeesRepository, mapper, _timeService,
                                                   mockOvertimeUtility, _clientsRepository, mockUserService, _configuration, holidayGuidsRepository);
        }
Пример #4
0
        public void Calling_HolidaysService_WithCountry_And_WithYear_Should_ReturnHolidaysWithStates()
        {
            // Arrange
            var country       = "us";
            var year          = 2014;
            var expectedState = "Alabama";

            // Act
            var holidaysService            = new HolidaysService(Config.AccessKey, Config.SecretKey);
            var result                     = holidaysService.HolidaysForCountry(country, year);
            var holidaysWithSpecificStates = result.Where(x => x.States != null && x.States.Count() > 0).ToList();
            var firstHoliday               = holidaysWithSpecificStates.FirstOrDefault();
            var firstState                 = firstHoliday.States.FirstOrDefault();

            // Assert
            Assert.IsNotNull(firstHoliday);
            Assert.IsNotNull(firstHoliday.States);
            Assert.AreEqual(expectedState, firstState.Name);
        }
Пример #5
0
        public void TestInitialize()
        {
            holidaysHelper      = new Mock <IHolidaysHelper>();
            timezonesRepository = new Mock <ITimezonesRepository>();
            naggerClient        = new Mock <INaggerClient>();
            logger = new Mock <ILogger>();

            holidaysController = new HolidaysService(holidaysHelper.Object,
                                                     timezonesRepository.Object,
                                                     naggerClient.Object,
                                                     logger.Object);

            holidaysHelper.Setup(x => x.GetAllHolidays(2020)).Returns(new List <PublicHoliday>
            {
                new PublicHoliday
                {
                    Name        = "New Year's Day",
                    LocalName   = "Any nou",
                    CountryCode = "AD",
                    Fixed       = true,
                    Global      = true,
                    Countries   = null,
                    LaunchYear  = null,
                    ModifiedAt  = DateTime.MinValue,
                    CreatedAt   = DateTime.MinValue,
                    EndDate     = Convert.ToDateTime("11/18/2020 1:00:00 PM"),
                    Date        = Convert.ToDateTime("11/17/2020 8:00:00 AM")
                },
                new PublicHoliday
                {
                    Name        = "Feria of La Chinita",
                    LocalName   = "Feria de la Chinita",
                    CountryCode = "VE",
                    Fixed       = true,
                    Global      = true,
                    Countries   = null,
                    LaunchYear  = null,
                    ModifiedAt  = DateTime.MinValue,
                    CreatedAt   = DateTime.MinValue,
                    EndDate     = Convert.ToDateTime("11/18/2020 1:00:00 PM"),
                    Date        = Convert.ToDateTime("11/17/2020 8:00:00 AM")
                }
            });
            var timezonesList = new List <Timezone>
            {
                new Timezone
                {
                    TimezoneUTC = "UTC-04:00",
                    CountryCode = "VE"
                },
                new Timezone
                {
                    TimezoneUTC = "UTC+01:00",
                    CountryCode = "AD"
                }
            };

            timezonesRepository.Setup(x => x.GetAllTimezones()).Returns(timezonesList);
            var returnCountry = Task.FromResult <Country>(new Country
            {
                CommonName           = "Venezuela",
                OfficialName         = "Bolivarian Republic of Venezuela",
                CountryCode          = "VE",
                AlternativeSpellings = new List <string>()
                {
                    "فنزويلا",
                    "Venesuela"
                },
                Region  = "Americas",
                Borders = new List <Country>()
                {
                }
            });

            timezonesRepository.Setup(x => x.InsertTimezonesAsync(timezonesList));

            naggerClient.Setup(x => x.GetCountryInfo("AD")).Returns(returnCountry);
        }