public void Create( MarkLinkedDoc markLinkedDoc, int markId, int linkedDocId) { if (markLinkedDoc == null) { throw new ArgumentNullException(nameof(markLinkedDoc)); } var foundLinkedDoc = _linkedDocRepo.GetById(linkedDocId); if (foundLinkedDoc == null) { throw new ArgumentNullException(nameof(foundLinkedDoc)); } var foundMark = _markRepo.GetById(markId); if (foundMark == null) { throw new ArgumentNullException(nameof(foundMark)); } var uniqueConstraintViolationCheck = _repository.GetByMarkIdAndLinkedDocId(markId, linkedDocId); if (uniqueConstraintViolationCheck != null) { throw new ConflictException(nameof(uniqueConstraintViolationCheck)); } markLinkedDoc.Mark = foundMark; markLinkedDoc.LinkedDoc = foundLinkedDoc; _repository.Add(markLinkedDoc); }
public void Create_ShouldFailWithConflict() { // Arrange var conflictMarkId = _markLinkedDocs[0].Mark.Id; var conflictLinkedDocId = _markLinkedDocs[0].LinkedDoc.Id; var newMarkLinkedDoc = new MarkLinkedDoc { }; // Act & Assert Assert.Throws <ConflictException>(() => _service.Create(newMarkLinkedDoc, conflictMarkId, conflictLinkedDocId)); _mockMarkLinkedDocRepo.Verify(mock => mock.Add(It.IsAny <MarkLinkedDoc>()), Times.Never); }
public void Create_ShouldFailWithNull_WhenWrongValues() { // Arrange int markId = _rnd.Next(1, TestData.marks.Count()); var linkedDocId = _rnd.Next(1, TestData.linkedDocs.Count()); var newMarkLinkedDoc = new MarkLinkedDoc { }; // Act & Assert Assert.Throws <ArgumentNullException>(() => _service.Create(null, markId, linkedDocId)); Assert.Throws <ArgumentNullException>(() => _service.Create(newMarkLinkedDoc, 999, linkedDocId)); Assert.Throws <ArgumentNullException>(() => _service.Create(newMarkLinkedDoc, markId, 999)); _mockMarkLinkedDocRepo.Verify(mock => mock.Add(It.IsAny <MarkLinkedDoc>()), Times.Never); }
public void Create_ShouldCreateMarkLinkedDoc() { // Arrange int markId = _rnd.Next(1, TestData.marks.Count()); var linkedDocId = _rnd.Next(1, TestData.linkedDocs.Count()); while (_markLinkedDocs.FirstOrDefault( v => v.Mark.Id == markId && v.LinkedDoc.Id == linkedDocId) != null) { linkedDocId = _rnd.Next(1, TestData.linkedDocs.Count()); } var newMarkLinkedDoc = new MarkLinkedDoc { }; // Act _service.Create(newMarkLinkedDoc, markId, linkedDocId); // Assert _mockMarkLinkedDocRepo.Verify(mock => mock.Add(It.IsAny <MarkLinkedDoc>()), Times.Once); Assert.NotNull(newMarkLinkedDoc.LinkedDoc); Assert.NotNull(newMarkLinkedDoc.Mark); }
public void Add_ShouldAddMarkLinkedDoc() { // Arrange var context = GetContext(TestData.markLinkedDocs); var repo = new SqlMarkLinkedDocRepo(context); int markId = _rnd.Next(1, TestData.marks.Count()); int linkedDocId = _rnd.Next(1, TestData.linkedDocs.Count()); var markLinkedDoc = new MarkLinkedDoc { Mark = TestData.marks.SingleOrDefault(v => v.Id == markId), LinkedDoc = TestData.linkedDocs.SingleOrDefault( v => v.Id == linkedDocId), }; // Act repo.Add(markLinkedDoc); // Assert Assert.NotNull(repo.GetById(markLinkedDoc.Id)); context.Database.EnsureDeleted(); context.Dispose(); }
public void Delete(MarkLinkedDoc markLinkedDoc) { _context.MarkLinkedDocs.Remove(markLinkedDoc); _context.SaveChanges(); }
public void Update(MarkLinkedDoc markLinkedDoc) { _context.Entry(markLinkedDoc).State = EntityState.Modified; _context.SaveChanges(); }
public void Add(MarkLinkedDoc markLinkedDoc) { _context.MarkLinkedDocs.Add(markLinkedDoc); _context.SaveChanges(); }