public async Task <SessionDetailsModel> CreateAsync(SessionCreateModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } var session = Mapper.Map <Session>(model); // verify speaker id and audience id are valid var speaker = await SpeakersRepository.GetByIdAsync(session.SpeakerId); var audience = await AudiencesRepository.GetByIdAsync(session.AudienceId); if (speaker == null || audience == null) { throw new IndexOutOfRangeException(); } session.Speaker = speaker; session.Audience = audience; var created = await Repository.CreateAsync(session); await Audit.AuditCreatedAsync($"Session {session.Title} has been created"); return(Mapper.Map <SessionDetailsModel>(created)); }
public void GetItemTest() { var repo = new AudiencesRepository(_context); var item = new Audience { Name = "Test804" }; repo.AddItem(item); int Id = _context.Audiences.FirstOrDefault(x => x.Name == item.Name).Id; Assert.AreEqual(item.Name, repo.GetItem(Id).Name); _context.Audiences.Remove(item); }
public void AddItemTest() { var repo = new AudiencesRepository(_context); var item = new Audience { Name = "Test888" }; repo.AddItem(item); string name = _context.Audiences.FirstOrDefault(x => x.Name == item.Name).Name; Assert.AreEqual(item.Name, name); _context.Audiences.Remove(item); }
public void ChangeItemTest() { var repo = new AudiencesRepository(_context); var item = new Audience { Name = "Test806" }; repo.AddItem(item); int Id = _context.Audiences.FirstOrDefault(x => x.Name == item.Name).Id; var newitem = repo.GetItem(Id); newitem.Name = "Test807"; repo.ChangeItem(newitem); Assert.AreEqual(newitem.Name, _context.Audiences.FirstOrDefault(x => x.Name == newitem.Name).Name); _context.Audiences.Remove(newitem); }
static Unit() { _context = new MyAppDbContext("MyAppConnStr"); DepartmentsRepository = new DepartmentsRepository(_context); TeachersRepository = new TeachersRepository(_context); SubjectsRepository = new SubjectsRepository(_context); SpecialitiesRepository = new SpecialitiesRepository(_context); GroupsRepository = new GroupsRepository(_context); PhonesRepository = new PhonesRepository(_context); StudentsRepository = new StudentsRepository(_context); AudiencesRepository = new AudiencesRepository(_context); AudLectRepository = new AudLectRepository(_context); LectionsRepository = new LectionsRepository(_context); MarksRepository = new MarksRepository(_context); TeachSubjRepository = new TeachSubjRepository(_context); }
public void AddItemsTest() { var repo = new AudiencesRepository(_context); var item1 = new Audience { Name = "Test222" }; var item2 = new Audience { Name = "Test223" }; Audience[] items = new Audience[] { item1, item2 }; repo.AddItems(items); Assert.AreEqual(items[0].Name, _context.Audiences.FirstOrDefault(x => x.Name == "Test222").Name); Assert.AreEqual(items[1].Name, _context.Audiences.FirstOrDefault(x => x.Name == "Test223").Name); _context.Audiences.Remove(item1); _context.Audiences.Remove(item2); }
public void AllItemsTest() { var repo = new AudiencesRepository(_context); Assert.AreEqual(_context.Audiences.Count(), repo.AllItems.Count()); var item1 = new Audience { Name = "Test802" }; var item2 = new Audience { Name = "Test802" }; repo.AddItem(item1); repo.AddItem(item2); Assert.AreEqual(_context.Audiences.Count(), repo.AllItems.Count()); _context.Audiences.Remove(item1); _context.Audiences.Remove(item2); }
public async Task <SessionDetailsModel> UpdateAsync(Guid id, SessionUpdateModel model) { if (id.Equals(Guid.Empty)) { throw new ArgumentNullException(nameof(id)); } if (model == null) { throw new ArgumentNullException(nameof(model)); } var found = await Repository.GetByIdAsync(id); if (found == null) { return(null); } Mapper.Map <SessionUpdateModel, Session>(model, found); // verify speaker id and audience id are valid var speaker = await SpeakersRepository.GetByIdAsync(found.SpeakerId); var audience = await AudiencesRepository.GetByIdAsync(found.AudienceId); if (speaker == null || audience == null) { throw new IndexOutOfRangeException(); } found.Speaker = speaker; found.Audience = audience; var updated = await Repository.UpdateAsync(found); await Audit.AuditCreatedAsync($"Session {updated.Title} has been updated"); return(Mapper.Map <SessionDetailsModel>(updated)); }
public void GetItemExceptionTest() { var repo = new AudiencesRepository(_context); var item1 = repo.GetItem(-1).Name; }