public void GetBeveragesTest() { Beverage beverage1 = new Beverage { Id = 1, Image = "image1", Name = "beverage1" }; Beverage beverage2 = new Beverage { Id = 2, Image = "image2", Name = "beverage2" }; Beverage beverage3 = new Beverage { Id = 3, Image = "image3", Name = "beverage3" }; FakeRepository repository = new FakeRepository(); repository.Beverages.Add(beverage2); repository.Beverages.Add(beverage3); repository.Beverages.Add(beverage1); List <Beverage> beverages = new List <Beverage> { beverage1, beverage2, beverage3 }; AddDrinkViewModel expected = new AddDrinkViewModel { Beverages = beverages }; BeverageController beverageController = new BeverageController(repository); AddDrinkViewModel actual = beverageController.GetBeverages(); CollectionAssert.AreEqual(actual.Beverages, expected.Beverages); }
public IActionResult Add(string type) { switch (type) { case "Dish": var model = new AddDishViewModel(); this.SetValuesToDishViewModel(model); return(this.View("AddDish", model)); case "Drink": var drinkViewModel = new AddDrinkViewModel(); this.SetValuesToDrinkViewModel(drinkViewModel); return(this.View("AddDrink", drinkViewModel)); case "Ingredient": var ingredientViewModel = new AddIngredientViewModel(); this.SetValuesToIngredientViewModel(ingredientViewModel); return(this.View("AddIngredient", ingredientViewModel)); case "Allergen": return(this.View("AddAllergen", new AllergenViewModel())); case "DishCategory": return(this.View("AddDishCategory", new AddCategoryViewModel())); case "DrinkCategory": return(this.View("AddDrinkCategory", new AddCategoryViewModel())); } return(this.View()); }
public async Task <IActionResult> AddDrink(AddDrinkViewModel drink) { if (!this.ModelState.IsValid) { this.SetValuesToDrinkViewModel(drink); return(this.View(drink)); } // TODO Check if the file is the right format await this.drinkService.AddDrinkAsync(drink, this.webHostEnvironment.WebRootPath); return(this.RedirectToAction("Index")); }
public AddDrinkViewModel GetByUserId(string id) { var result = _context.DrinkCounts.Single(a => a.UserId == id); AddDrinkViewModel viewModel = new AddDrinkViewModel { Amount = result.Amount, UserId = result.UserId, TypeId = result.TypeId }; return(viewModel); }
public void AddDrinkShouldWorkCorrectly() { var addDrinkModel = new AddDrinkViewModel() { Name = "test", Price = 49.02m, Weight = 250, AlchoholByVolume = 10, AdditionalInfo = "This is additional info", DrinkTypeId = 3, IngredientsId = new List <int>() { 1, 2 }, PackagingTypeId = 1, Image = this.GetImageMock(), }; MyController <ManageController> .Calling(c => c.AddDrink(addDrinkModel)) .ShouldHave() .ValidModelState() .AndAlso() .ShouldReturn() .RedirectToAction("Index"); addDrinkModel.Weight = -5; MyController <ManageController> .Calling(c => c.AddDrink(addDrinkModel)) .ShouldReturn() .View(); //MyMvc //.Pipeline() //.ShouldMap(request => request // .WithContentType("multipart/form-data") // .WithLocation("/Manage/AddDish") // .WithFormFields(addDishModel) // .WithMethod(HttpMethod.Post) // .WithUser(u => u.InRole(GlobalConstants.AdministratorRoleName)) // .WithAntiForgeryToken()) //.To<ManageController>(c => c.AddDish(addDishModel)) //.Which() //.ShouldHave() //.ValidModelState() //.AndAlso() //.ShouldReturn() //.View(); }
public int Post(AddDrinkViewModel viewModel) { if (!ModelState.IsValid) { //return "Failed"; //returHttpBadRequest (ModelState); return(400); } DrinkCount counter = new DrinkCount { Amount = viewModel.Amount, Date = DateTime.Now, TypeId = viewModel.TypeId, UserId = viewModel.UserId }; _context.DrinkCounts.Add(counter); _context.SaveChanges(); return(counter.Id); }
public async Task AddDrinkAsyncWorksCorrectly() { await this.PopulateDB(); await this.AddDrinksToDB(); var ingredients = this.DbContext.Ingredients.Take(2).ToList(); var ingredientsId = ingredients.Select(x => x.Id).ToList(); var addDrinkViewModel = new AddDrinkViewModel() { Name = "newItem", AdditionalInfo = "test1", Weight = 50, Price = 10, Image = this.GetFile("test123"), DrinkTypeId = 1, IngredientsId = ingredientsId, AlchoholByVolume = 20, PackagingTypeId = 1, }; await this.DrinkService.AddDrinkAsync(addDrinkViewModel, AppDomain.CurrentDomain.BaseDirectory); var newDrink = this.DbContext.Drinks.Include(x => x.Ingredients).FirstOrDefault(x => x.Name == "newItem"); var expected = AutoMapperConfig.MapperInstance.Map <Drink>(addDrinkViewModel); expected.Ingredients = ingredients; Assert.Equal(expected.Name, newDrink.Name); Assert.Equal(expected.AdditionalInfo, newDrink.AdditionalInfo); Assert.Equal(expected.Weight, newDrink.Weight); Assert.Equal(expected.Price, newDrink.Price); Assert.Equal(ImageExtension.jpeg, newDrink.Image.Extension); Assert.Equal(expected.DrinkTypeId, newDrink.DrinkTypeId); expected.Ingredients.ShouldDeepEqual(newDrink.Ingredients); Assert.Equal(expected.AlchoholByVolume, newDrink.AlchoholByVolume); Assert.Equal(expected.PackagingTypeId, newDrink.PackagingTypeId); }
public ActionResult AddDrunkDrink(AddDrinkViewModel model) { int volume = int.Parse(model.Volume.Replace("ml", "")); Beverage beverage = _repository.GetBeverageByName(model.Beverage); DateTime time = DateTime.Now; DrunkDrink drink = new DrunkDrink { Volume = volume, Beverage = beverage, Time = time }; String userId = User.Identity.GetUserId(); Account account = _repository.GetAccountByUser(userId); account.DrunkDrinks.Add(drink); _repository.UpdateAccount(account); _repository.SaveChanges(); return(RedirectToAction("Index", "Home")); }
public async Task AddDrinkAsync(AddDrinkViewModel drink, string wwwroot) { var extension = drink.Image.FileName.Split(".")[^ 1];
private void SetValuesToDrinkViewModel(AddDrinkViewModel addDrinkViewModel) { addDrinkViewModel.DrinkType = this.drinkTypeService.GetAllDrinkTypesWithId().Select(x => new SelectListItem(x.Name, x.Id.ToString())).ToList(); addDrinkViewModel.PackagingType = this.packagingService.GetAllPackagingTypes().Select(x => new SelectListItem(x.Name, x.Id.ToString())).ToList(); addDrinkViewModel.Ingredients = this.ingredientService.GetAllAsDishIngredientViewModel().Select(x => new SelectListItem(x.Name, x.Id.ToString())).ToList(); }