public async void AddAsync_NewTaskAdded() { var newTask = _fixture.Create <TaskDomain>(); var newGuid = _fixture.Create <Guid>(); var newDateTime = _fixture.Create <DateTime>(); var dbTask = new DbTask { Id = newGuid, AddedDate = newDateTime, State = newTask.State, DueDate = newTask.DueDate, Priority = newTask.Priority, Description = newTask.Description }; _guidFactory.Setup(x => x.Create()).Returns(newGuid).Verifiable(); _dateTimeProvider.Setup(x => x.Now).Returns(newDateTime).Verifiable(); _dbRepository .Setup(x => x.Add(It.IsAny <DbTask>())) .Callback <DbTask>(x => x.Should().BeEquivalentTo(dbTask)) .Verifiable(); await _tasksRepository.AddAsync(newTask); _dateTimeProvider.VerifyAll(); _dbRepository.VerifyAll(); _guidFactory.VerifyAll(); }