public async Task TestIfUpdateHtmlDescriptionWorksProperly(string productId) { var context = PCHUBDbContextInMemoryInitializer.InitializeContext(); Account cloudinaryCredentials = new Account( CloudinaryAccountTests.CloudName, CloudinaryAccountTests.ApiKey, CloudinaryAccountTests.ApiSecret); var cloudinaryUtility = new Cloudinary(cloudinaryCredentials); var cloudinary = new CloudinaryServices(cloudinaryUtility); var adminProductServices = new Areas.Administration.Services.AdminProductsServices(context, cloudinary); var form = new InserHtmlInProductViewModel(); await context.Products.AddAsync(new Product { Id = productId, }); await context.SaveChangesAsync(); form.ProductId = productId; form.HtmlContent = "<p>Hello World</p>"; await adminProductServices.UpdateHtmlDescriptionAsync(form); var result = await context.Products.FirstOrDefaultAsync(x => x.Id == productId); Assert.NotNull(result.HtmlDescription); Assert.Equal("<p>Hello World</p>", result.HtmlDescription); }
public async Task <IActionResult> InsertHtmlDescrtionIntoProduct(InserHtmlInProductViewModel form) { if (!await this.productService.ProductExistsAsync(form.ProductId)) { return(this.NotFound()); } else { if (this.ModelState.IsValid) { await this.service.UpdateHtmlDescriptionAsync(form); } else { return(this.View(form)); } } return(this.Redirect("/Products/" + form.Category + "/" + form.ProductId)); }
public async Task <IActionResult> InsertHtmlDescrtionIntoProduct(string productId) { if (!await this.productService.ProductExistsAsync(productId)) { return(this.NotFound()); } else { var product = await this.service.GetProductAsync(productId); var model = new InserHtmlInProductViewModel(); model.Title = product.Title; model.ProductId = product.Id; model.PictureUrl = product.MainPicture.Url; model.HtmlContent = product.HtmlDescription; model.Category = product.Category.Name; return(this.View(model)); } }
public async Task TestIfUpdateHtmlDescriptionThrowsError() { var context = PCHUBDbContextInMemoryInitializer.InitializeContext(); Account cloudinaryCredentials = new Account( CloudinaryAccountTests.CloudName, CloudinaryAccountTests.ApiKey, CloudinaryAccountTests.ApiSecret); var cloudinaryUtility = new Cloudinary(cloudinaryCredentials); var cloudinary = new CloudinaryServices(cloudinaryUtility); var adminProductServices = new Areas.Administration.Services.AdminProductsServices(context, cloudinary); var form = new InserHtmlInProductViewModel(); await Assert.ThrowsAsync <NullReferenceException>(async() => { await adminProductServices.UpdateHtmlDescriptionAsync(form); }); }