public IActionResult Post([FromBody]CreateFoodTruckModel createModel) { var createCommand = this.mapper.Map<CreateFoodTruckModel, CreateFoodTruckCommand>(createModel); FoodTruck foodTruck = this.foodTruckService.CreateFoodTruck(createCommand); var model = this.mapper.Map<FoodTruck, FoodTruckModel>(foodTruck); return this.CreatedAtRoute(GET_FOOD_TRUCK_BY_ID, new { id = model.FoodTruckId }, model); }
public void TagsArrayCanBeNull() { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = "Food Truck Name", Description = "Some very interesting description", Website = @"http://www.foodtruck.com", Tags = null }; // Act CreateFoodTruckModelValidator validator = new CreateFoodTruckModelValidator(); var result = validator.Validate(model); // Assert result.IsValid.Should().BeTrue(); }
public void TestCreateFoodTruckModelWithInvalidUrl() { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = "My Food Truck", Description = "A simple description of this food truck", Website = @"htp://simplefoodtruck.com", Tags = new List <String>() { "Burgers", "Nachos", "Wings" } }; // Act List <ValidationResult> results = new List <ValidationResult>(); var valid = Validator.TryValidateObject(model, new ValidationContext(model), results, true); // Assert Assert.False(valid); }
public void TestCreateFoodTruckModelWithTooLongOfName() { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = "This Food Truck has a very very long name", // 41 chars, max is 40 Description = "A simple description of this food truck", Website = @"http://simplefoodtruck.com", Tags = new List <String>() { "Burgers", "Nachos", "Wings" } }; // Act List <ValidationResult> results = new List <ValidationResult>(); var valid = Validator.TryValidateObject(model, new ValidationContext(model), results, true); // Assert Assert.False(valid); }
public void CreateFoodTruckModelWithSingleQuoteInNameShouldPass() { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = "David's Food Truck", Description = "A simple description of this food truck", Website = @"http://foodtruckdavid.com", Tags = new List <String>() { "Burgers", "Nachos", "Wings" } }; // Act List <ValidationResult> results = new List <ValidationResult>(); var valid = Validator.TryValidateObject(model, new ValidationContext(model), results, true); // Assert Assert.True(valid); }
public void FoodTruckWithNullNameFails() { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = null, Description = "Some very interesting description", Website = @"http://www.foodtruck.com", Tags = new List <string>() { "Burgers", "Sandwiches" } }; // Act CreateFoodTruckModelValidator validator = new CreateFoodTruckModelValidator(); var result = validator.Validate(model); // Assert result.IsValid.Should().BeFalse(); }
public void TagsArrayCannotContainInvalidEntries() { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = "Food Truck Name", Description = "Some very interesting description", Website = @"http://www.foodtruck.com", Tags = new List <string>() { "Burgers", "Pizza@" } }; // Act CreateFoodTruckModelValidator validator = new CreateFoodTruckModelValidator(); var result = validator.Validate(model); // Assert result.IsValid.Should().BeFalse(); }
public void InvalidWebsitesFail(String website) { // Arrange CreateFoodTruckModel model = new CreateFoodTruckModel() { Name = "Food Truck Name", Description = "Some very interesting description", Website = website, Tags = new List <string>() { "Burgers", "Sandwiches" } }; // Act CreateFoodTruckModelValidator validator = new CreateFoodTruckModelValidator(); var result = validator.Validate(model); // Assert result.IsValid.Should().BeFalse(); }