public void AddEventWithLocationTest() { string date = "2001-01-01T10:30:00"; DateTime eventDate = DateTime.ParseExact( date, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = "PARTY", Location = "Everywhere" }; EventsManagerFast eventsManager = new EventsManagerFast(); eventsManager.AddEvent(newEvent); Assert.AreEqual(1, eventsManager.Count); }
public void AddMultipleDuplicateTest() { int eventsCount = 4; string[] dates = new string[] { "2001-01-01T10:30:00", "2001-01-01T11:11:11", "2001-01-01T21:30:11", "2001-01-01T22:30:00" }; string[] titles = new string[] { "Party", "Exam", "Test", "Trip" }; string[] locations = new string[] { "Everywhere", "Telerik Academy", "University", "London" }; EventsManagerFast eventsManager = new EventsManagerFast(); for (int i = 0; i < eventsCount; i++) { DateTime eventDate = DateTime.ParseExact( dates[i], "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = titles[i], Location = locations[i] }; eventsManager.AddEvent(newEvent); eventsManager.AddEvent(newEvent); } Assert.AreEqual(eventsCount * 2, eventsManager.Count); }
public void AlphabeticalOrderOfListedEventsTest() { string[] dates = new string[] { "2002-01-01T10:30:00", "2011-01-01T22:16:00", "2002-01-01T10:30:00", "2011-01-01T22:16:00", "2011-01-01T22:16:00", "2011-01-01T22:16:00", }; string[] titles = new string[] { "Party", "Exam", "Trip", "Test", "Tennis", "Ski" }; string[] locations = new string[] { "Everywhere", "Telerik Academy", "London", "University", "Paris", null }; EventsManagerFast eventsManager = new EventsManagerFast(); for (int i = 0; i < 6; i++) { DateTime eventDate = DateTime.ParseExact( dates[i], "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = titles[i], Location = locations[i] }; eventsManager.AddEvent(newEvent); } DateTime eventDateToMatch = DateTime.ParseExact( "2011-01-01T22:16:00", "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); IEnumerable<Event> matchedEvents = eventsManager.ListEvents(eventDateToMatch, 3); string[] matchedEventsStrings = GetTextRepresentations(matchedEvents); string[] expectedEventsStrings = new string[] { "2011-01-01T22:16:00 | Exam | Telerik Academy", "2011-01-01T22:16:00 | Ski", "2011-01-01T22:16:00 | Tennis | Paris", }; Assert.AreEqual(3, matchedEvents.Count()); CollectionAssert.AreEqual(expectedEventsStrings, matchedEventsStrings); }
public void ListOneEventTest() { string date1 = "2001-01-01T10:30:00"; DateTime eventDate1 = DateTime.ParseExact( date1, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent1 = new Event() { Date = eventDate1, Title = "PARTY", Location = null }; string date2 = "2001-01-01T10:30:00"; DateTime eventDate2 = DateTime.ParseExact( date2, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent2 = new Event() { Date = eventDate2, Title = "Trip", Location = "London" }; string date3 = "2001-01-01T10:30:00"; DateTime eventDate3 = DateTime.ParseExact( date3, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent3 = new Event() { Date = eventDate3, Title = "Trip", Location = "Moscow" }; EventsManagerFast eventsManager = new EventsManagerFast(); eventsManager.AddEvent(newEvent1); eventsManager.AddEvent(newEvent2); eventsManager.AddEvent(newEvent3); IEnumerable<Event> matchedEvents = eventsManager.ListEvents(eventDate1, 1); string[] matchedEventsStrings = GetTextRepresentations(matchedEvents); string[] expectedEventsStrings = new string[] { "2001-01-01T10:30:00 | PARTY" }; Assert.AreEqual(1, matchedEvents.Count()); CollectionAssert.AreEqual(expectedEventsStrings, matchedEventsStrings); }
public void ListMissingEventTest() { string date = "2001-01-01T10:30:00"; DateTime eventDate = DateTime.ParseExact( date, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = "PARTY", Location = null }; EventsManagerFast eventsManager = new EventsManagerFast(); eventsManager.AddEvent(newEvent); IEnumerable<Event> matchedEvents = eventsManager.ListEvents(eventDate.AddDays(10), 1); string[] matchedEventsStrings = GetTextRepresentations(matchedEvents); Assert.AreEqual(0, matchedEvents.Count()); CollectionAssert.AreEqual(new string[0], matchedEventsStrings); }
public void DeleteMultipleEventsTest() { string[] dates = new string[] { "2001-01-01T10:30:00", "2001-01-01T11:11:11", "2001-01-01T21:30:11", "2001-01-01T22:30:00", "2001-01-01T21:30:11", "2001-01-01T22:30:00", "2001-01-01T21:15:11", "2001-01-01T22:16:00", "2001-01-01T21:15:11", "2001-01-01T22:15:00" }; string[] titles = new string[] { "Party", "Exam", "Test", "Trip", "Exam", "Trip", "Party", "Test", "Party", "Exam" }; string[] locations = new string[] { "Everywhere", "Telerik Academy", "University", "London", "Here", "Everywhere", "Telerik Academy", "University", "London", "Here", }; EventsManagerFast eventsManager = new EventsManagerFast(); for (int i = 0; i < 10; i++) { DateTime eventDate = DateTime.ParseExact( dates[i], "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = titles[i], Location = locations[i] }; eventsManager.AddEvent(newEvent); } int deletedEventsCount = eventsManager.DeleteEventsByTitle("PaRty"); Assert.AreEqual(3, deletedEventsCount); }
public void CaseInsensitiveDeleteOneEventTest() { string date = "2001-01-01T10:30:00"; DateTime eventDate = DateTime.ParseExact( date, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = "PARTY", Location = null }; EventsManagerFast eventsManager = new EventsManagerFast(); eventsManager.AddEvent(newEvent); int deletedEventsCount = eventsManager.DeleteEventsByTitle("PaRty"); Assert.AreEqual(1, deletedEventsCount); }
public void Add50000EventsTest() { int eventsCount = 50000; string[] dates = new string[] { "2001-01-01T10:30:00", "2001-01-01T11:11:11", "2001-01-01T21:30:11", "2001-01-01T22:30:00", "2001-01-01T21:30:11", "2001-01-01T22:30:00", "2001-01-01T21:15:11", "2001-01-01T22:16:00", "2001-01-01T21:15:11", "2001-01-01T22:15:00" }; string[] titles = new string[] { "Party", "Exam", "Test", "Trip", "Exam", "Trip", "Party", "Test", "Party", "Exam" }; string[] locations = new string[] { "Everywhere", "Telerik Academy", "University", "London", "Here", "Everywhere", "Telerik Academy", "University", "London", "Here", }; EventsManagerFast eventsManager = new EventsManagerFast(); for (int i = 0; i < eventsCount; i++) { DateTime eventDate = DateTime.ParseExact( dates[i % 10], "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); Event newEvent = new Event() { Date = eventDate, Title = titles[i % 10], Location = locations[i % 10] }; if (i % 2 == 0) { eventsManager.AddEvent(newEvent); eventsManager.AddEvent(newEvent); } else { eventsManager.AddEvent(newEvent); } } Assert.AreEqual(eventsCount + (eventsCount / 2), eventsManager.Count); }
public void ConstructorTest() { EventsManagerFast eventsManager = new EventsManagerFast(); Assert.AreEqual(0, eventsManager.Count); }