public async Task TestSaveAndUpdateHotelMeal_Save_Failed_Error() { //Arrange List <MealPlanViewModel> mealPlanViewModelList = new List <MealPlanViewModel>(); List <CuisineTypeViewModel> cuisineTypeViewModelList = new List <CuisineTypeViewModel>(); CuisineTypeViewModel cuisine1 = new CuisineTypeViewModel() { Id = 1, Cusine = "Indian", IsSelected = true, ObjectState = ObjectState.Added }; CuisineTypeViewModel cuisine2 = new CuisineTypeViewModel() { Id = 2, Cusine = "Asian", IsSelected = true, ObjectState = ObjectState.Added }; cuisineTypeViewModelList.Add(cuisine1); cuisineTypeViewModelList.Add(cuisine2); MealPlanViewModel mealPlanViewModel = new MealPlanViewModel() { HotelId = 1103, MealId = 1, IsSelected = true, ObjectState = ObjectState.Added, MealPlanOptions = new MealOptionViewModel() { CurrencyId = 1, Price = 1000, ObjectState = ObjectState.Added, } }; mealPlanViewModel.MealPlanOptions.CuisineOptions.AddRange(cuisineTypeViewModelList); mealPlanViewModelList.Add(mealPlanViewModel); iHotelMealConnectionLibrary.Setup(x => x.InsertEntity(It.IsAny <HotelMeal>())).Returns(Task.FromResult(new BaseResult <long>() { IsError = true, ExceptionMessage = Helper.Common.GetMockException() })).Verifiable(); //Act Task <BaseResult <HotelMealType> > actionResult = mealPlanRepository.SaveAndUpdateHotelMealAndMealType(mealPlanViewModelList, It.IsAny <string>()); //Assert Assert.IsTrue(actionResult.Result.IsError); Assert.IsTrue(actionResult.Result.ExceptionMessage != null); }
public async Task <IActionResult> CreateMealPlan([FromBody] List <MealPlanViewModel> mealPlanViewModelList) { string userName = base.LoggedInUserName; if (mealPlanViewModelList != null && mealPlanViewModelList.Any()) { BaseResult <HotelMealType> addOrUpdateHotelMealResult = await iMealPlan.SaveAndUpdateHotelMealAndMealType(mealPlanViewModelList, userName).ConfigureAwait(false); if (addOrUpdateHotelMealResult.IsError && addOrUpdateHotelMealResult.ExceptionMessage != null) { return(StatusCode(500, addOrUpdateHotelMealResult)); } else if (addOrUpdateHotelMealResult.Result == null) { return(new NoContentResult()); } return(Ok(mealPlanViewModelList)); //200 } return(BadRequest()); //400 }