public IActionResult Post(int foodTruckId, [FromBody] CreateFoodTruckScheduleModel createModel) { var createCommand = new CreateFoodTruckScheduleCommand() { FoodTruckId = foodTruckId }; this.mapper.Map <CreateFoodTruckScheduleModel, CreateFoodTruckScheduleCommand>(createModel, createCommand); Schedule schedule = this.scheduleService.AddFoodTruckSchedule(createCommand); var model = this.mapper.Map <Schedule, FoodTruckScheduleModel>(schedule); return(this.CreatedAtRoute(GET_SINGLE_FOOD_TRUCK_SCHEDULE, new { foodTruckId = model.FoodTruckId, scheduleId = model.ScheduleId }, model)); }
public void ValidateScheduleStartAndEndCannotBeTheSame() { // Arrange DateTime testDateTime = new DateTime(2017, 10, 9, 8, 0, 0); // 1:00 PM IDateTimeProvider dateTimeProvider = new UnitTestDateTimeProvider(testDateTime); CreateFoodTruckScheduleModel model = new CreateFoodTruckScheduleModel() { LocationId = 1, StartTime = new DateTime(2017, 10, 9, 11, 0, 0), EndTime = new DateTime(2017, 10, 9, 11, 0, 0) }; // Act var validator = new CreateFoodTruckScheduleModelValidator(dateTimeProvider); var result = validator.Validate(model); // Assert result.IsValid.Should().BeFalse(); }
public void ValidateScheduleStartCannotBeInThePast() { // Arrange DateTime testDateTime = new DateTime(2017, 10, 9, 13, 0, 0); // 1:00 PM IDateTimeProvider dateTimeProvider = new UnitTestDateTimeProvider(testDateTime); CreateFoodTruckScheduleModel model = new CreateFoodTruckScheduleModel() { LocationId = 1, StartTime = new DateTime(2017, 10, 9, hour: 10, minute: 0, second: 0), EndTime = new DateTime(2017, 10, 9, hour: 14, minute: 0, second: 0) }; // Act var validator = new CreateFoodTruckScheduleModelValidator(dateTimeProvider); var result = validator.Validate(model); // Assert result.IsValid.Should().BeFalse(); }
public void ValidateGoodSchedulesShouldPass() { // Arrange DateTime testDateTime = new DateTime(2017, 10, 9, 8, 0, 0); // 8:00 AM IDateTimeProvider dateTimeProvider = new UnitTestDateTimeProvider(testDateTime); CreateFoodTruckScheduleModel model = new CreateFoodTruckScheduleModel() { LocationId = 1, StartTime = new DateTime(2017, 10, 9, 10, 0, 0), EndTime = new DateTime(2017, 10, 9, 14, 0, 0) }; // Act var validator = new CreateFoodTruckScheduleModelValidator(dateTimeProvider); var result = validator.Validate(model); // Assert result.IsValid.Should().BeTrue(); }