示例#1
0
        public void GetDaysOff_June2019_ReturnsListOf2Elements()
        {
            DaysOffData daysOffList = new DaysOffData(2019);

            IList <IDayOff> list = daysOffList.GetDaysOff(Month.June);

            Assert.That(list.Count, Is.EqualTo(2));
        }
示例#2
0
        public void GetDaysOff_None2019_ThrowsArgumentException()
        {
            DaysOffData daysOffList = new DaysOffData(2019);

            TestDelegate getList = () => daysOffList.GetDaysOff(Month.None);

            Assert.That(getList, Throws.ArgumentException);
        }
示例#3
0
        public void Constructor_Year2019_ConstitutionDayDateIs_03_05_2019()
        {
            DaysOffData daysOffList     = new DaysOffData(2019);
            IDayOff     constitutionDay = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.ConstitutionDay);

            DateTime expectedDate = new DateTime(2019, 5, 3);

            Assert.That(constitutionDay.Date, Is.EqualTo(expectedDate));
        }
示例#4
0
        public void Constructor_Year2018_CorpusChristiDayDateIs_31_05_2018()
        {
            DaysOffData daysOffList      = new DaysOffData(2018);
            IDayOff     corpusChristiDay = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.CorpusChristi);

            DateTime expectedDate = new DateTime(2018, 5, 31);

            Assert.That(corpusChristiDay.Date, Is.EqualTo(expectedDate));
        }
示例#5
0
        public void Constructor_Year2018_DescendOfTheHolySpiritDateIs_20_05_2018()
        {
            DaysOffData daysOffList            = new DaysOffData(2018);
            IDayOff     descendOfTheHolySpirit = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.DescendOfTheHolySpirit);

            DateTime expectedDate = new DateTime(2018, 5, 20);

            Assert.That(descendOfTheHolySpirit.Date, Is.EqualTo(expectedDate));
        }
示例#6
0
        public void Constructor_Year2019_SecondChristmasDayDateIs_26_12_2019()
        {
            DaysOffData daysOffList = new DaysOffData(2019);
            IDayOff     christmas   = daysOffList.DaysOff.LastOrDefault(x => x.Holiday == Holiday.Christmas);

            DateTime expectedDate = new DateTime(2019, 12, 26);

            Assert.That(christmas.Date, Is.EqualTo(expectedDate));
        }
示例#7
0
        public void Constructor_Year2019_IndependenceDayDateIs_11_11_2019()
        {
            DaysOffData daysOffList     = new DaysOffData(2019);
            IDayOff     independenceDay = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.IndependenceDay);

            DateTime expectedDate = new DateTime(2019, 11, 11);

            Assert.That(independenceDay.Date, Is.EqualTo(expectedDate));
        }
示例#8
0
        public void Constructor_Year2019_AllSaintsDayDateIs_01_11_2019()
        {
            DaysOffData daysOffList  = new DaysOffData(2019);
            IDayOff     allSaintsDay = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.AllSaintsDay);

            DateTime expectedDate = new DateTime(2019, 11, 1);

            Assert.That(allSaintsDay.Date, Is.EqualTo(expectedDate));
        }
示例#9
0
        public void Constructor_Year2019_ArmedForcesDayDateIs_15_08_2019()
        {
            DaysOffData daysOffList    = new DaysOffData(2019);
            IDayOff     armedForcesDay = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.ArmedForcesDay);

            DateTime expectedDate = new DateTime(2019, 8, 15);

            Assert.That(armedForcesDay.Date, Is.EqualTo(expectedDate));
        }
示例#10
0
        public void Constructor_Year2019_LabourDayDateIs_01_05_2019()
        {
            DaysOffData daysOffList = new DaysOffData(2019);
            IDayOff     labourDay   = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.LabourDay);

            DateTime expectedDate = new DateTime(2019, 5, 1);

            Assert.That(labourDay.Date, Is.EqualTo(expectedDate));
        }
示例#11
0
        public void Constructor_Year2019_EasterMondayDateIs_22_04_2019()
        {
            DaysOffData daysOffList  = new DaysOffData(2019);
            IDayOff     easterMonday = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.EasterMonday);

            DateTime expectedDate = new DateTime(2019, 4, 22);

            Assert.That(easterMonday.Date, Is.EqualTo(expectedDate));
        }
示例#12
0
        public void Constructor_Year2019_EpiphanyDateIs_06_01_2019()
        {
            DaysOffData daysOffList = new DaysOffData(2019);
            IDayOff     epiphany    = daysOffList.DaysOff.FirstOrDefault(x => x.Holiday == Holiday.Epiphany);

            DateTime expectedDate = new DateTime(2019, 1, 6);

            Assert.That(epiphany.Date, Is.EqualTo(expectedDate));
        }
示例#13
0
        public void GetDaysOff_June2019_ReturnsListWithNewYearsDayAndEpiphany()
        {
            DaysOffData daysOffList = new DaysOffData(2019);

            IList <IDayOff> list = daysOffList.GetDaysOff(Month.June);

            var result = list.Where(d => d.Holiday == Holiday.DescendOfTheHolySpirit || d.Holiday == Holiday.CorpusChristi);

            Assert.That(result.Count, Is.EqualTo(2));
        }
示例#14
0
        public void GetDaysOff_January2019_ReturnsListWithNewYearsDayAndEpiphany()
        {
            DaysOffData daysOffList = new DaysOffData(2019);

            IList <IDayOff> list = daysOffList.GetDaysOff(Month.January);

            var result = list.Where(d => d.Holiday == Holiday.NewYearsDay || d.Holiday == Holiday.Epiphany);

            Assert.That(result.Count, Is.EqualTo(2));
        }
示例#15
0
        private void Generate()
        {
            IList <IPerson> people = GetPeopleList();

            // Generate data
            DaysOffData        daysOff  = new DaysOffData(Year);
            AttendanceListData listData = new AttendanceListData(daysOff, people, Month, Year);

            // Create document generator
            LocalizedNames localizedNames = new LocalizedNames();
            AttendanceListDocumentGenerator documentGenerator = new AttendanceListDocumentGenerator(listData, localizedNames);

            // Set document generator settings
            documentGenerator.EnableColors          = EnableColors;
            documentGenerator.EnableHolidaysTexts   = EnableHolidaysTexts;
            documentGenerator.EnableSundaysTexts    = EnableSundaysTexts;
            documentGenerator.EnableTableStretching = EnableTableStretching;

            // Generate a document
            Document document = documentGenerator.GenerateDocument();

            // Get directory path and filename
            DirectoryProvider directoryProvider = new DirectoryProvider(localizedNames);
            FilenameGenerator filenameGenerator = new FilenameGenerator(localizedNames, _dateTimeProvider);
            string            path     = directoryProvider.GetDocumentsDirectoryPath();
            string            filename = filenameGenerator.GeneratePdfDocumentFilename(listData);

            // Save document
            FileSaver fileSaver = new FileSaver();

            fileSaver.SavePdfDocument(document, path, filename);

            // And open it
            FileOpener fileOpener = new FileOpener();

            fileOpener.OpenFile(path, filename);

            SerializeSettings(directoryProvider, filenameGenerator, fileSaver);
        }
示例#16
0
        public void Constructor_Year2019_ObjectsYearPropertyEqualTo2019()
        {
            DaysOffData daysOffList = new DaysOffData(2019);

            Assert.That(daysOffList.Year, Is.EqualTo(2019));
        }
示例#17
0
        public void Constructor_Year2019_CreateListOf13DaysOff()
        {
            DaysOffData daysOffList = new DaysOffData(2019);

            Assert.That(daysOffList.DaysOff.Count, Is.EqualTo(13));
        }