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));
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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);
        }
Exemplo n.º 5
0
 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);
 }
Exemplo n.º 6
0
        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);
        }
Exemplo n.º 7
0
        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));
        }
Exemplo n.º 9
0
 public void GetItemExceptionTest()
 {
     var repo  = new AudiencesRepository(_context);
     var item1 = repo.GetItem(-1).Name;
 }