public void TestInput_ShouldCallDateTimeProviderGetCurrentTime() { // Arrange var mockedFactory = new Mock <IViewModelFactory>(); var mockedDateTimeProvider = new Mock <IDateTimeProvider>(); var mockedNutritionService = new Mock <INutritionService>(); var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>(); var controller = new NutritionController(mockedFactory.Object, mockedDateTimeProvider.Object, mockedNutritionService.Object, mockedAuthenticationProvider.Object); // Act controller.Input(); // Assert mockedDateTimeProvider.Verify(p => p.GetCurrentTime(), Times.Once); }
public void TestInput_ShouldCallFactoryCreateInputViewModelCorrectly() { // Arrange var mockedFactory = new Mock <IViewModelFactory>(); var date = new DateTime(); var mockedDateTimeProvider = new Mock <IDateTimeProvider>(); mockedDateTimeProvider.Setup(p => p.GetCurrentTime()).Returns(date); var mockedNutritionService = new Mock <INutritionService>(); var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>(); var controller = new NutritionController(mockedFactory.Object, mockedDateTimeProvider.Object, mockedNutritionService.Object, mockedAuthenticationProvider.Object); // Act controller.Input(); // Assert mockedFactory.Verify(f => f.CreateInputViewModel(date), Times.Once); }