public void EventManagerListEventsOneWithLocation()
        {
            EventsManager eventsManager = new EventsManager();
            var date = DateTime.Now;
            var location = "Location";
            var title = "Title";
            var firstEvent = new Event()
                                 {
                                     Date = DateTime.Now,
                                     Location = location,
                                     Title = title
                                 };

            eventsManager.AddEvent(firstEvent);
            var expected = eventsManager.ListEvents(date, 1);
            Assert.AreEqual(expected.First().ToString(), firstEvent.ToString());
        }
Пример #2
0
        public void AddEvent_ValidInput()
        {
            string dateTimeFormat = "yyyy-MM-ddTHH:mm:ss";
            string date = "2012-01-21T20:00:00";
            DateTime eventDate = DateTime.ParseExact(date, dateTimeFormat, CultureInfo.InvariantCulture);
            string eventTitle = "party Viki";
            Event currentEvent = new Event(eventDate, eventTitle);

            EventsManager currentEventManager = new EventsManager();
            currentEventManager.AddEvent(currentEvent);

            IEnumerable<Event> actualOutputList = currentEventManager.ListEvents(eventDate, 5);
            int numberOfAddedEvents = actualOutputList.Count();
            bool isCountValid = numberOfAddedEvents == 1;

            bool isOutputEventValid = actualOutputList.First() == currentEvent;

            bool isAddCorrect = isCountValid && isOutputEventValid;

            Assert.IsTrue(isAddCorrect, "Adding valid event is incorect.");
        }
        public void ListValidEventsTest()
        {
            EventsManager manager = new EventsManager();
            //reflection test object
            Event occasion = new Event("title", "location", DateTime.Now.AddDays(1));
            Event occasion1 = new Event("title1", "location1", DateTime.Now.AddDays(2));
            Event occasion2 = new Event("title2", "location2", DateTime.Now.AddDays(3));
            Event occasion3 = new Event("title3", "location3", DateTime.Now.AddDays(4));

            OrderedMultiDictionary<DateTime, Event> dummyOrderedDictionary = new OrderedMultiDictionary<DateTime, Event>(true);
            dummyOrderedDictionary.Add(DateTime.Now.AddDays(1), occasion);
            dummyOrderedDictionary.Add(DateTime.Now.AddDays(2), occasion1);
            dummyOrderedDictionary.Add(DateTime.Now.AddDays(3), occasion2);
            dummyOrderedDictionary.Add(DateTime.Now.AddDays(4), occasion3);
            FieldInfo fieldInfo = manager.GetType().GetField("_orderedEvents", BindingFlags.Instance | BindingFlags.NonPublic);
            fieldInfo.SetValue(manager, dummyOrderedDictionary);

            var result = manager.ListEvents(DateTime.Now, 4);
            Assert.AreEqual(4, result.Count());
        }
        public void ListEventsTooBigCountTest()
        {
            EventsManager manager = new EventsManager();
            //reflection test object
            Event occasion = null;
            OrderedMultiDictionary<DateTime, Event> dummyOrderedDictionary = new OrderedMultiDictionary<DateTime, Event>(true);

            for (int i = 0; i < 105; i++)
            {
                occasion = new Event("title" + i, "location" + i, DateTime.Now.AddHours(i));
                dummyOrderedDictionary.Add(DateTime.Now.AddHours(i), occasion);
                occasion = null;
            }

            FieldInfo fieldInfo = manager.GetType().GetField("_orderedEvents", BindingFlags.Instance | BindingFlags.NonPublic);
            fieldInfo.SetValue(manager, dummyOrderedDictionary);

            var result = manager.ListEvents(DateTime.Now, 101);
            Assert.AreEqual(0, result.Count());
        }
Пример #5
0
        public void ListEvents_CountIsBigger()
        {
            string dateTimeFormat = "yyyy-MM-ddTHH:mm:ss";
            int numberOfAddedEvents = 50;
            int numberOfOtherEvents = 20;

            string date = "2012-01-21T20:00:00";
            DateTime eventDate = DateTime.ParseExact(date, dateTimeFormat, CultureInfo.InvariantCulture);
            string eventTitle = "party Viki";
            Event currentEvent = new Event(eventDate, eventTitle);

            EventsManager currentEventManager = new EventsManager();
            for (int i = 0; i < numberOfAddedEvents; i++)
            {
                currentEventManager.AddEvent(currentEvent);
            }

            string otherDate = "2015-01-21T20:00:00";
            DateTime otherEventDate = DateTime.ParseExact(otherDate, dateTimeFormat, CultureInfo.InvariantCulture);
            string otherEventTitle = "C# exam";
            Event otherEvent = new Event(otherEventDate, otherEventTitle);
            for (int i = 0; i < numberOfOtherEvents; i++)
            {
                currentEventManager.AddEvent(otherEvent);
            }

            IEnumerable<Event> foundEvents = currentEventManager.ListEvents(eventDate, 20);
            bool isNumberOfFoundEventsCorrect = foundEvents.Count() == 20;

            Assert.IsTrue(isNumberOfFoundEventsCorrect, "Number of found events is incorect!");
        }
        public void EventManagerListEventsMultipleWithLocation()
        {
            EventsManager eventsManager = new EventsManager();
            var date = DateTime.Now;
            var location = "Location";
            var title = "Title";
            var firstEvent = new Event()
                                 {
                                     Date = DateTime.Now,
                                     Location = location,
                                     Title = title
                                 };

            var secondEvent = new Event()
                                {
                                    Date = DateTime.Now,
                                    Location = location,
                                    Title = "Obicham grozde"
                                };

            eventsManager.AddEvent(firstEvent);
            eventsManager.AddEvent(secondEvent);

            var expected = eventsManager.ListEvents(date, 3).Select(e => e.ToString());
            var real = new List<Event> { secondEvent, firstEvent }.Select(e => e.ToString());

            Assert.AreEqual(string.Join(Environment.NewLine, expected), string.Join(Environment.NewLine, real));
        }