public void ShouldCallDateTimeProviderNow_WhenInvoked() { var repositoryMock = new Mock <IEfRepository <Genre> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var datetimeMock = new Mock <IDateTimeProvider>(); var service = new GenreService(repositoryMock.Object, unitOfWorkMock.Object, datetimeMock.Object); var guid = new Guid("05fababb-f897-49ef-b42a-4943fcc38148"); service.DeleteById(guid); repositoryMock.Verify(r => r.GetById(guid), Times.Once); }
public void ShouldCallRepositoryUpdate_WhenInvoked() { var repositoryMock = new Mock <IEfRepository <Genre> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var datetimeMock = new Mock <IDateTimeProvider>(); var service = new GenreService(repositoryMock.Object, unitOfWorkMock.Object, datetimeMock.Object); var genre = new Genre("Rock"); var guid = new Guid("05fababb-f897-49ef-b42a-4943fcc38148"); var sampleDateTime = new DateTime(2017, 10, 22); datetimeMock.Setup(d => d.Now()).Returns(sampleDateTime); repositoryMock.Setup(r => r.GetById(guid)).Returns(genre); service.DeleteById(guid); repositoryMock.Verify(x => x.Update(genre), Times.Once()); }
public void ShouldSetGenreDeletedOnToCurrentDate_WhenGenreExists() { var repositoryMock = new Mock <IEfRepository <Genre> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var datetimeMock = new Mock <IDateTimeProvider>(); var service = new GenreService(repositoryMock.Object, unitOfWorkMock.Object, datetimeMock.Object); var genre = new Genre("Rock"); var guid = new Guid("05fababb-f897-49ef-b42a-4943fcc38148"); var currentDate = new DateTime(2017, 10, 22); datetimeMock.Setup(d => d.Now()).Returns(currentDate); repositoryMock.Setup(r => r.GetById(guid)).Returns(genre); service.DeleteById(guid); Assert.That(genre.DeletedOn == currentDate); }