Example #1
0
        static void Main(string[] args)
        {
            RenderWindow app = new RenderWindow(new VideoMode(800, 600), "Metonic Calendar");

            app.Closed += new EventHandler(OnClose);

            Nodes        nodes    = new Nodes();
            Sun          sun      = new Sun(nodes);
            Moon         moon     = new Moon();
            IMetonicYear year     = new MetonicYear();
            IMonth       month    = new Month(year, sun, moon);
            Day          day      = new Day(month, year);
            SunCount     sunCount = new SunCount(sun);

            Control controller = new Control(year, month, day, moon, sunCount, nodes, sun);

            controller.SetYearZero();

            Color windowColor = new Color(255, 255, 255);

            while (app.IsOpen)
            {
                app.DispatchEvents();
                app.Clear(windowColor);

                DrawCalendar(app, nodes, sun, moon, year, month, day, sunCount);

                app.Display();
                controller.AddDay();
                Thread.Sleep(1000);
            }
        }
Example #2
0
        public void IsYear19LeapYear()
        {
            var calendar = new MetonicYear();

            calendar.SetMetonicYear(19);
            var isLeapYear = calendar.IsLeapYear();

            Assert.AreEqual(true, isLeapYear);
        }
Example #3
0
        public void SetMonth()
        {
            var year  = new MetonicYear();
            var month = new Month(year);

            month.Set(1);
            var currentMonth = month.Get();

            Assert.AreEqual(1, currentMonth);
        }
Example #4
0
        public void IncrimentPast19Returns1()
        {
            var calendar = new MetonicYear();

            calendar.SetMetonicYear(19);
            calendar.IncrimentYear();
            var metonicYear = calendar.GetMetonicYear();

            Assert.AreEqual(1, metonicYear);
        }
Example #5
0
        public void SetMetonicYear()
        {
            var yeartoSet = 3;
            var calendar  = new MetonicYear();

            calendar.SetMetonicYear(yeartoSet);
            int metonicYear = calendar.GetMetonicYear();

            Assert.AreEqual(metonicYear, yeartoSet);
        }
Example #6
0
        public void IncrimentMetonicYear()
        {
            var calendar = new MetonicYear();

            calendar.SetMetonicYear(1);
            calendar.IncrimentYear();
            var metonicYear = calendar.GetMetonicYear();

            Assert.AreEqual(2, metonicYear);
        }
Example #7
0
        public void GetMetonicYear()
        {
            int yearToExpect = 2;
            var calendar     = new MetonicYear();

            calendar.SetMetonicYear(yearToExpect);
            int metonicYear = calendar.GetMetonicYear();

            Assert.AreEqual(yearToExpect, metonicYear);
        }
Example #8
0
        public void TestDate()
        {
            IMetonicYear year        = new MetonicYear();
            IMonth       month       = new Month(year);
            Day          day         = new Day(month, year);
            var          date        = new DateTime(2018, 1, 19);
            Control      cal         = new Control(year, month, day);
            var          metonicDate = cal.GetMetonicDate(date);

            Assert.AreEqual("4 stay home, year 5", metonicDate);
        }
Example #9
0
        public void IncrimentMonthTo1UpdatesYearInNonLeapYear()
        {
            var year = new MetonicYear();

            year.SetMetonicYear(2);
            var month = new Month(year);

            month.Set(12);
            month.Incriment();
            Assert.AreEqual(3, year.GetMetonicYear());
        }
Example #10
0
        public void IncrimentMonthNonLeapYearWontAccepts13()
        {
            var year = new MetonicYear();

            year.SetMetonicYear(1);
            var month = new Month(year);

            month.Set(12);
            month.Incriment();
            var currentMonth = month.Get();

            Assert.AreEqual(1, currentMonth);
        }
Example #11
0
        public void setDay()
        {
            var year  = new MetonicYear();
            var month = new Month(year);

            month.Set(3);
            var day = new Day(month, year);

            day.Set(1);
            var currentDay = day.Get();

            Assert.AreEqual(1, currentDay);
        }
Example #12
0
        public void IncrimentDayTo1InShortMonthSetsLongMonth()
        {
            var year  = new MetonicYear();
            var month = new Month(year);

            month.Set(3);
            var day = new Day(month, year);

            day.SetShortMonth();
            day.Set(29);
            day.Incriment();
            var isShortMonth = day._shortMonth;

            Assert.AreEqual(false, isShortMonth);
        }
Example #13
0
        public void IncrimentDayTo1InLongMonthIncrimentsMonth()
        {
            var year  = new MetonicYear();
            var month = new Month(year);

            month.Set(3);
            var day = new Day(month, year);

            day.SetLongMonth();
            day.Set(30);
            day.Incriment();
            var currentMonth = month.Get();

            Assert.AreEqual(4, currentMonth);
        }
Example #14
0
        public void IncrimentDayTo30LongMonthSets30()
        {
            var year  = new MetonicYear();
            var month = new Month(year);

            month.Set(3);
            var day = new Day(month, year);

            day.SetLongMonth();
            day.Set(29);
            day.Incriment();
            var currentDay = day.Get();

            Assert.AreEqual(30, currentDay);
        }