// method to add a music type, ensuring it is of the right Id public void AddMusicType(string musicTypeId, string musicTypeInfo) { using (var db = new EventsProjectContext()) { if (musicTypeId.Length != 5) { throw new ArgumentException("ID must be exactly 5 characters long"); } if (db.Musics.Where(m => m.MusicId == musicTypeId).FirstOrDefault() != null) { throw new ArgumentException("ID must be unique"); } else { var newMusicType = new Music() { EventTypeId = "MUSIC", MusicId = musicTypeId.ToUpper(), Genre = musicTypeInfo }; db.Musics.Add(newMusicType); db.SaveChanges(); } } }
// method to add sport type, and ensure it's of correct fromat public void AddSportType(string sportTypeId, string sportTypeInfo) { using (var db = new EventsProjectContext()) { if (sportTypeId.Length != 5) { throw new ArgumentException("ID must be exactly 5 characters long"); } if (db.Sports.Where(m => m.SportId == sportTypeId).FirstOrDefault() != null) { throw new ArgumentException("ID must be unique"); } else { var newSportType = new Sport() { EventTypeId = "Sport", SportId = sportTypeId.ToUpper(), SportName = sportTypeInfo }; db.Sports.Add(newSportType); db.SaveChanges(); } } }
public List <Venue> RetrieveVenues() { using (var db = new EventsProjectContext()) { return(db.Venues.ToList()); } }
//// retrieving info from DB to populate GUI listboxes and combo boxes public List <EventType> RetrieveEventTypes() { using (var db = new EventsProjectContext()) { return(db.EventTypes.ToList()); } }
public List <MusicEvent> RetrieveMusicEvents() { using (var db = new EventsProjectContext()) { return(db.MusicEvents.Where(me => me.MusicId == SelectedMusic.MusicId).ToList()); } }
// method to create a new venue, ensuring the ID is 5 letters long and capacity is not negative public void CreateVenue(string newVenueId, string newVenueName, string newVenueCity, string newVenueCountry, int newVenueCapacity) { using (var db = new EventsProjectContext()) { if (newVenueId.Length != 5) { throw new ArgumentException($"A VenueId needs to be exactly 5 characters long"); } else if (newVenueCapacity < 0) { throw new ArgumentException($"A venue's capacity must not be negative"); } else { var newVenue = new Venue() { VenueId = newVenueId.ToUpper(), VenueName = newVenueName, City = newVenueCity, Country = newVenueCountry, Capacity = newVenueCapacity }; db.Venues.Add(newVenue); db.SaveChanges(); } } }
public List <Sport> RetrieveSports() { using (var db = new EventsProjectContext()) { return(db.Sports.ToList()); } }
public List <Music> RetrieveMusic() { using (var db = new EventsProjectContext()) { return(db.Musics.ToList()); } }
public List <SportEvent> RetrieveSportEvents() { using (var db = new EventsProjectContext()) { return(db.SportEvents.Where(se => se.SportId == SelectedSport.SportId).ToList()); } }
public void CreateVenueWithLowerCaseLettersTest() { using (var db = new EventsProjectContext()) { _crudManager.CreateVenue("oldtr", "Old Trafford", "Manchester", "UK", 76000); Assert.AreEqual(db.Venues.Where(v => v.VenueId == "OLDTR").FirstOrDefault().VenueId, "OLDTR"); } }
public void CreateVenueWithNegativeCapacityTest() { using (var db = new EventsProjectContext()) { var ex = Assert.Throws <ArgumentException>(() => _crudManager.CreateVenue("OLDTR", "Old Trafford", "Manchester", "UK", -1)); Assert.AreEqual(ex.Message, "A venue's capacity must not be negative"); } }
public void CreateVenueWithVenueIDTooLongTest() { using (var db = new EventsProjectContext()) { var ex = Assert.Throws <ArgumentException>(() => _crudManager.CreateVenue("OLDTRA", "Old Trafford", "Manchester", "UK", 76000)); Assert.AreEqual(ex.Message, "A VenueId needs to be exactly 5 characters long"); } }
// method to remove a music event public void RemoveMusicEvent(int musicEventIDToRemove) { using (var db = new EventsProjectContext()) { var musicEvent = db.MusicEvents.Where(me => me.MusicEventId == musicEventIDToRemove).FirstOrDefault(); db.MusicEvents.Remove(musicEvent); db.SaveChanges(); } }
public void TearDown() { using (var db = new EventsProjectContext()) { var badminton = db.Sports.Where(m => m.SportId == "BDMTN").FirstOrDefault(); db.Sports.Remove(badminton); db.SaveChanges(); } }
public void TearDown() { using (var db = new EventsProjectContext()) { var hipHop = db.Musics.Where(m => m.MusicId == "HPHOP").FirstOrDefault(); db.Musics.Remove(hipHop); db.SaveChanges(); } }
// method to remove a sport event public void RemoveSportEvent(int sportEventIDToRemove) { using (var db = new EventsProjectContext()) { var sportEvent = db.SportEvents.Where(se => se.SportEventId == sportEventIDToRemove).FirstOrDefault(); db.SportEvents.Remove(sportEvent); db.SaveChanges(); } }
public void AddMusicTypeTest() { using (var db = new EventsProjectContext()) { var countBefore = db.Musics.Count(); _crudManager.AddMusicType("HPHOP", "Hip Hop"); var countAfter = db.Musics.Count(); Assert.AreEqual(countBefore + 1, countAfter); } }
public void AddSportTypeTest() { using (var db = new EventsProjectContext()) { var countBefore = db.Sports.Count(); _crudManager.AddSportType("BDMTN", "Badminton"); var countAfter = db.Sports.Count(); Assert.AreEqual(countBefore + 1, countAfter); } }
public void CreateVenueTest() { using (var db = new EventsProjectContext()) { var venuesBefore = db.Venues.Count(); _crudManager.CreateVenue("OLDTR", "Old Trafford", "Manchester", "UK", 76000); var venuesAfter = db.Venues.Count(); Assert.AreEqual(venuesBefore + 1, venuesAfter); } }
public void CreateMusicEventTest() { using (var db = new EventsProjectContext()) { var musicEventsBefore = db.MusicEvents.Count(); _crudManager.AddMusicEvent("WMBLY", "_POP_", "Beyonce", new DateTime(2020, 11, 07, 20, 00, 00), 40000); var musicEventsAfter = db.MusicEvents.Count(); Assert.AreEqual(musicEventsBefore + 1, musicEventsAfter); currentMusicEventId = db.MusicEvents.Where(me => me.Artist == "Beyonce").Select(me => me.MusicEventId).FirstOrDefault(); } }
public void CreateSportEventTest() { using (var db = new EventsProjectContext()) { var sportEventsBefore = db.SportEvents.Count(); _crudManager.AddSportEvent("WMBLY", "FTBAL", "Aston Villa vs Chelsea", new DateTime(2020, 11, 07, 20, 00, 00), 40000); var sportEventsAfter = db.SportEvents.Count(); Assert.AreEqual(sportEventsBefore + 1, sportEventsAfter); currentSportEventId = db.SportEvents.Where(me => me.Fixture == "Aston Villa vs Chelsea").Select(me => me.SportEventId).FirstOrDefault(); } }
public void TearDown() { if (currentSportEventId != null) { using (var db = new EventsProjectContext()) { var selectedSportEvent = db.SportEvents.Where(se => se.SportEventId == currentSportEventId).FirstOrDefault(); db.SportEvents.Remove(selectedSportEvent); db.SaveChanges(); } } }
public void SellMusicTickets(int numberOfTickets, string venue, MusicEvent musicEvent) { using (var db = new EventsProjectContext()) { var whichEvent = db.MusicEvents.Where(se => se.MusicEventId == musicEvent.MusicEventId).FirstOrDefault(); var whichVenue = db.Venues.Where(v => v.VenueName == venue).FirstOrDefault(); if (whichEvent.TicketsSold + numberOfTickets <= whichVenue.Capacity) { whichEvent.TicketsSold += numberOfTickets; db.SaveChanges(); } else { throw new ArgumentException($"Ticket sales cannot exceed the events capacity"); } } }
private void PopulateTextBoxes() { if (_crudManager.SelectedSportEvent != null) { using (var db = new EventsProjectContext()) { var sportEvent = _crudManager.SelectedSportEvent; FixtureInfo.Text = sportEvent.Fixture; VenueInfo.Text = db.Venues.Where(v => v.VenueId == sportEvent.VenueId).Select(v => v.VenueName).FirstOrDefault(); CityInfo.Text = db.Venues.Where(v => v.VenueId == sportEvent.VenueId).Select(v => v.City).FirstOrDefault(); CountryInfo.Text = db.Venues.Where(v => v.VenueId == sportEvent.VenueId).Select(v => v.Country).FirstOrDefault(); CapacityInfo.Text = db.Venues.Where(v => v.VenueId == sportEvent.VenueId).Select(v => v.Capacity).FirstOrDefault().ToString(); DateInfo.Text = sportEvent.dateTime.ToShortDateString(); TimeInfo.Text = sportEvent.dateTime.ToShortTimeString(); TicketsSoldInfo.Text = sportEvent.TicketsSold.ToString(); } } }
public void TearDown() { using (var db = new EventsProjectContext()) { var selectedVenue = from v in db.Venues where v.VenueId == "OLDTR" select v; foreach (var c in selectedVenue) { db.Venues.Remove(c); } db.SaveChanges(); } }
public void CannotSellTicketsOverCapacityTest() { using (var db = new EventsProjectContext()) { var newEvent = new MusicEvent() { VenueId = "WMBLY", MusicId = "_POP_", Artist = "A", dateTime = new DateTime(2020, 11, 20, 20, 00, 00), TicketsSold = 90000 }; db.MusicEvents.Add(newEvent); db.SaveChanges(); var ex = Assert.Throws <ArgumentException>(() => _crudManager.SellMusicTickets(100, "Wembley Stadium", newEvent)); Assert.AreEqual(ex.Message, "Ticket sales cannot exceed the events capacity"); currentMusicEventId = db.MusicEvents.Where(me => me.Artist == "A").Select(me => me.MusicEventId).FirstOrDefault(); } }
// method to remove a venue public void RemoveVenue(string venueIdToRemove) { using (var db = new EventsProjectContext()) { var venue = db.Venues.Where(v => v.VenueId == venueIdToRemove).FirstOrDefault(); var sportEvents = db.SportEvents.Where(v => v.VenueId == venueIdToRemove).ToList(); var musicEvents = db.MusicEvents.Where(v => v.VenueId == venueIdToRemove).ToList(); foreach (var ev in sportEvents) { db.SportEvents.Remove(ev); } foreach (var ev in musicEvents) { db.MusicEvents.Remove(ev); } db.Venues.RemoveRange(venue); db.SaveChanges(); } }
public void EditVenueNameTest() { using (var db = new EventsProjectContext()) { var newVenue = new Venue() { VenueId = "OLDTR", VenueName = "Old Trafford", City = "Manchester", Country = "UK", Capacity = 76000 }; db.Venues.Add(newVenue); db.SaveChanges(); _crudManager.EditVenue("OLDTR", "New Trafford", "Manchester", "UK", 76000); var testVenueName = db.Venues.Where(v => v.VenueId == "OLDTR").Select(s => new { s.VenueName }).FirstOrDefault(); Assert.AreEqual(testVenueName.VenueName, "New Trafford"); } }
// method to edit a venue, ensuring certain parameters are met public void EditVenue(string venueId, string newVenueName, string newVenueCity, string newVenueCountry, int newVenueCapacity) { using (var db = new EventsProjectContext()) { SelectedVenue = db.Venues.Where(v => v.VenueId == venueId).FirstOrDefault(); if (newVenueCapacity < 0) { throw new ArgumentException($"A venue's capacity must not be negative"); } else { SelectedVenue.VenueName = newVenueName; SelectedVenue.City = newVenueCity; SelectedVenue.Country = newVenueCountry; SelectedVenue.Capacity = newVenueCapacity; db.SaveChanges(); } } }
public void DeleteVenueTest() { using (var db = new EventsProjectContext()) { var newVenue = new Venue() { VenueId = "OLDTR", VenueName = "Old Trafford", City = "Manchester", Country = "UK", Capacity = 76000 }; db.Venues.Add(newVenue); db.SaveChanges(); var oldCount = db.Venues.Count(); _crudManager.RemoveVenue("OLDTR"); var newCount = db.Venues.Count(); Assert.AreEqual(oldCount - 1, newCount); } }