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);
        }
Пример #4
0
        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);
        }