public void WhenRequestingVehicleDetails_ThenSetsRemindersList() { const int selectedVehicleId = 99; const int odometer = 15000; var vehicle = new VehicleModel( new Vehicle { VehicleId = selectedVehicleId }, new VehicleStatisticsModel(0, 0, 0, 0, odometer, 0) ); var reminder = new ReminderSummaryModel(new Reminder(), false); MockHandlerFor( () => new Mock <GetVehicleListForUser>(null), m => m.Setup(h => h.Execute(defaultUser.UserId)) .Returns(new[] { vehicle })); Mock <GetOverdueRemindersForVehicle> handler = MockHandlerFor( () => new Mock <GetOverdueRemindersForVehicle>(null), m => m.Setup(h => h.Execute(selectedVehicleId, It.IsAny <DateTime>(), odometer)) .Returns(new[] { reminder }) .Verifiable("Did not get overdue reminders.") ); TestableVehicleController controller = GetTestableVehicleController(); ActionResult result = controller.Details(selectedVehicleId); var model = result.Extract <VehicleDetailsViewModel>(); handler.Verify(); Assert.NotNull(model.OverdueReminders); Assert.Same(reminder, model.OverdueReminders.First()); }
public void WhenRequestingVehicleDetailsWithoutAValidVehicle_ThenThrows() { var list = new VehicleModel[] { }; MockHandlerFor( () => new Mock <GetVehicleListForUser>(null), x => x .Setup(h => h.Execute(defaultUser.UserId)) .Returns(list)); MockHandlerFor(() => new Mock <GetOverdueRemindersForVehicle>(null)); TestableVehicleController controller = GetTestableVehicleController(); Assert.Throws <InvalidOperationException>(() => { controller.Details(DefaultVehicleId); }); }
public void WhenRequestingVehicleDetails_ThenSetsVehicleListToCollapsedView() { MockHandlerFor( () => new Mock <GetVehicleListForUser>(null), x => x .Setup(h => h.Execute(defaultUser.UserId)) .Returns(DefaultVehicleId.StandardVehicleList())); MockHandlerFor(() => new Mock <GetOverdueRemindersForVehicle>(null)); TestableVehicleController controller = GetTestableVehicleController(); ActionResult result = controller.Details(DefaultVehicleId); var model = result.Extract <VehicleDetailsViewModel>(); Assert.True(model.VehicleList.IsCollapsed); }
public void WhenRequestingVehicleDetails_ThenSetsViewModel() { var vehicle = new Vehicle { VehicleId = DefaultVehicleId }; var list = new[] { new VehicleModel(vehicle, new VehicleStatisticsModel()) }; MockHandlerFor <GetVehicleListForUser>( x => x.Setup(h => h.Execute(defaultUser.UserId)) .Returns(list)); MockHandlerFor <GetOverdueRemindersForVehicle>(); TestableVehicleController controller = GetTestableVehicleController(); ActionResult result = controller.Details(DefaultVehicleId); var model = result.Extract <VehicleDetailsViewModel>(); Assert.NotNull(model); }