public void Update_ShouldUpdateAttachedDoc()
        {
            // Arrange
            var attachedDocs = new List <AttachedDoc> {
            };

            foreach (var ad in TestData.attachedDocs)
            {
                attachedDocs.Add(new AttachedDoc
                {
                    Id          = ad.Id,
                    Mark        = ad.Mark,
                    Designation = ad.Designation,
                    Name        = ad.Name,
                });
            }
            var context = GetContext(attachedDocs);
            var repo    = new SqlAttachedDocRepo(context);

            int id          = _rnd.Next(1, attachedDocs.Count());
            var attachedDoc = attachedDocs.FirstOrDefault(v => v.Id == id);

            attachedDoc.Name = "NewUpdate";

            // Act
            repo.Update(attachedDoc);

            // Assert
            Assert.Equal(attachedDoc.Name, repo.GetById(id).Name);

            context.Database.EnsureDeleted();
            context.Dispose();
        }
        public void GetById_ShouldReturnNull_WhenWrongId()
        {
            // Act
            var context = GetContext(TestData.attachedDocs);
            var repo    = new SqlAttachedDocRepo(context);

            var attachedDoc = repo.GetById(999);

            // Assert
            Assert.Null(attachedDoc);

            context.Database.EnsureDeleted();
            context.Dispose();
        }
        public void GetById_ShouldReturnAttachedDoc()
        {
            // Arrange
            var context = GetContext(TestData.attachedDocs);
            var repo    = new SqlAttachedDocRepo(context);

            int id = _rnd.Next(1, TestData.attachedDocs.Count());

            // Act
            var attachedDoc = repo.GetById(id);

            // Assert
            Assert.Equal(TestData.attachedDocs.SingleOrDefault(v => v.Id == id),
                         attachedDoc);

            context.Database.EnsureDeleted();
            context.Dispose();
        }
        public void Delete_ShouldDeleteAttachedDoc()
        {
            // Arrange
            var context = GetContext(TestData.attachedDocs);
            var repo    = new SqlAttachedDocRepo(context);

            int id          = _rnd.Next(1, TestData.attachedDocs.Count());
            var attachedDoc = TestData.attachedDocs.FirstOrDefault(v => v.Id == id);

            // Act
            repo.Delete(attachedDoc);

            // Assert
            Assert.Null(repo.GetById(id));

            context.Database.EnsureDeleted();
            context.Dispose();
        }
        public void Add_ShouldAddAttachedDoc()
        {
            // Arrange
            var context = GetContext(TestData.attachedDocs);
            var repo    = new SqlAttachedDocRepo(context);

            int markId      = _rnd.Next(1, TestData.marks.Count());
            var attachedDoc = new AttachedDoc
            {
                Mark        = TestData.marks.SingleOrDefault(v => v.Id == markId),
                Designation = "NewCreate",
                Name        = "NewCreate",
            };

            // Act
            repo.Add(attachedDoc);

            // Assert
            Assert.NotNull(repo.GetById(attachedDoc.Id));

            context.Database.EnsureDeleted();
            context.Dispose();
        }