예제 #1
0
        public void AddItemsTest()
        {
            var repo  = new MarksRepository(_context);
            var item1 = new Mark
            {
                Student      = _context.Students.FirstOrDefault(),
                TeachSubj    = _context.TeachSubjs.FirstOrDefault(x => x.Subject.Id == 1),
                StudentsMark = 55
            };
            var item2 = new Mark
            {
                Student      = _context.Students.FirstOrDefault(),
                TeachSubj    = _context.TeachSubjs.FirstOrDefault(x => x.Subject.Id == 2),
                StudentsMark = 55
            };

            Mark[] items = new Mark[] { item1, item2 };

            repo.AddItems(items);
            var newitem1 = _context.Marks.FirstOrDefault(x => x.Student.Id == item1.Student.Id &&
                                                         x.TeachSubj.Id == item1.TeachSubj.Id &&
                                                         x.StudentsMark == item1.StudentsMark);
            var newitem2 = _context.Marks.FirstOrDefault(x => x.Student.Id == item2.Student.Id &&
                                                         x.TeachSubj.Id == item2.TeachSubj.Id &&
                                                         x.StudentsMark == item2.StudentsMark);

            Assert.AreEqual(items[0].StudentsMark, newitem1.StudentsMark);
            Assert.AreEqual(items[0].Student.Id, newitem1.Student.Id);
            Assert.AreEqual(items[0].TeachSubj.TeacherId, newitem1.TeachSubj.TeacherId);
            Assert.AreEqual(items[0].TeachSubj.SubjId, newitem1.TeachSubj.SubjId);
            Assert.AreEqual(items[1].StudentsMark, newitem2.StudentsMark);
            Assert.AreEqual(items[1].Student.Id, newitem2.Student.Id);
            Assert.AreEqual(items[1].TeachSubj.TeacherId, newitem2.TeachSubj.TeacherId);
            Assert.AreEqual(items[1].TeachSubj.SubjId, newitem2.TeachSubj.SubjId);
            _context.Marks.Remove(item1);
            _context.Marks.Remove(item2);
        }