public void AddAsync_WhenObjectIsNull_ThrowsArgumentNullException() { var contextRepo = new ContextRepository <IAuditedContext>(It.IsAny <IAuditedContext>(), It.IsAny <ILogger <IAuditedContext> >()); var exception = Assert.ThrowsAsync <ArgumentNullException>(() => contextRepo.AddAsync <object>(null)); Assert.AreEqual("Value cannot be null. (Parameter 'entity')", exception.Message); }
public async Task Then_expected_methods_are_called_the_correct_times() { await _sut.AddAsync(_foo); Assert.Multiple(() => { _contextService.Received(_expectedContextManageCount).InitContext(); _contextService.Received(_expectedContextManageCount).ClearCurrentContext(); _dbSet.Received(1).AddAsync(_foo); _flushService.Received(1).FlushChangesAsync(_context); }); }
public async Task AddAsync_WhenAddingObject_VerifyDbSetAddAsyncIsCalled() { var @object = new object(); var mockContext = new Mock <IAuditedContext>(); var mockDbSet = new Mock <DbSet <object> >(); mockContext.Setup(a => a.Set <object>()).Returns(mockDbSet.Object); var repository = new ContextRepository <IAuditedContext>(mockContext.Object, It.IsAny <ILogger <IAuditedContext> >()); await repository.AddAsync(@object); Assert.Multiple(() => { mockDbSet.Verify(a => a.AddAsync(@object, It.IsAny <CancellationToken>()), Times.Once); mockContext.Verify(c => c.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Never, "Context should never saved."); }); }
public void When_adding_async_a_null_entity_Then_an_exception_is_thrown() { Assert.That(() => _sut.AddAsync(null), Throws.ArgumentNullException); }