public static ProductDiscountDraft DefaultProductDiscountDraftWithActive(ProductDiscountDraft draft, bool isActive) { var productDiscountDraft = DefaultProductDiscountDraft(draft); productDiscountDraft.IsActive = isActive; return(productDiscountDraft); }
public static ProductDiscountDraft DefaultProductDiscountDraftWithPredicate(ProductDiscountDraft draft, string predicate) { var productDiscountDraft = DefaultProductDiscountDraft(draft); productDiscountDraft.Predicate = predicate; return(productDiscountDraft); }
public static ProductDiscountDraft DefaultProductDiscountDraftWithKey(ProductDiscountDraft draft, string key) { var productDiscountDraft = DefaultProductDiscountDraft(draft); productDiscountDraft.Key = key; return(productDiscountDraft); }
public ProductDiscount CreateProductDiscount(ProductDiscountDraft productDiscountDraft) { IClient commerceToolsClient = this.GetService <IClient>(); ProductDiscount productDiscount = commerceToolsClient .ExecuteAsync(new CreateCommand <ProductDiscount>(productDiscountDraft)).Result; return(productDiscount); }
public static ProductDiscountDraft DefaultProductDiscountDraft(ProductDiscountDraft productDiscountDraft) { var randomInt = TestingUtility.RandomInt(); productDiscountDraft.Name = new LocalizedString() { { "en", TestingUtility.RandomString(10) } }; productDiscountDraft.Key = $"Key{randomInt}"; productDiscountDraft.IsActive = true; productDiscountDraft.Value = new ExternalProductDiscountValue(); productDiscountDraft.Predicate = "1 = 1"; productDiscountDraft.SortOrder = TestingUtility.RandomSortOrder(); return(productDiscountDraft); }
public void CreateProductDiscount() { IClient commerceToolsClient = this.productDiscountFixture.GetService <IClient>(); //Create Product Product product = this.productDiscountFixture.CreateProductWithVariant(); //Then Create Product Discount for this Product ProductDiscountDraft productDiscountDraft = this.productDiscountFixture.GetProductDiscountDraft(product.Id); ProductDiscount productDiscount = commerceToolsClient .ExecuteAsync(new CreateCommand <ProductDiscount>(productDiscountDraft)).Result; this.productDiscountFixture.ProductDiscountsToDelete.Add(productDiscount); Assert.Equal(productDiscountDraft.Name["en"], productDiscount.Name["en"]); }
/// <summary> /// Get Product Discount Draft with external product discount value and can be used for all products /// </summary> /// <returns></returns> private ProductDiscountDraft GetProductDiscountDraft() { string predicate = "1 = 1";//can be used for all products ProductDiscountDraft productDiscountDraft = new ProductDiscountDraft(); productDiscountDraft.Name = new LocalizedString() { { "en", TestingUtility.RandomString(10) } }; productDiscountDraft.Value = new ExternalProductDiscountValue(); productDiscountDraft.Predicate = predicate; productDiscountDraft.SortOrder = TestingUtility.RandomSortOrder(); productDiscountDraft.IsActive = true; return(productDiscountDraft); }
/// <summary> /// Create Product Discount for specific product - put the product Id inside predicate of the product discount /// </summary> /// <param name="productId"></param> /// <returns></returns> public ProductDiscountDraft GetProductDiscountDraft(string productId) { string predicate = this.GetProductDiscountPredicateBasedonProduct(productId); ProductDiscountDraft productDiscountDraft = new ProductDiscountDraft(); productDiscountDraft.Name = new LocalizedString() { { "en", this.RandomString(10) } }; productDiscountDraft.Description = new LocalizedString() { { "en", this.RandomString(20) } }; productDiscountDraft.Value = GetProductDiscountValueAsAbsolute(); productDiscountDraft.Predicate = predicate; productDiscountDraft.SortOrder = this.RandomSortOrder(); productDiscountDraft.ValidFrom = DateTime.Today.AddMonths(this.RandomInt(-5, -1)); productDiscountDraft.ValidUntil = DateTime.Today.AddMonths(this.RandomInt(1, 5)); productDiscountDraft.IsActive = true; return(productDiscountDraft); }
/// <summary> /// Create Product Discount for specific product - put the product Id inside predicate of the product discount /// </summary> /// <param name="productId"></param> /// <param name="discountCentAmount"></param> /// <returns></returns> public ProductDiscountDraft GetProductDiscountDraft(string productId, int?discountCentAmount = null) { string predicate = this.GetProductDiscountPredicateBasedonProduct(productId); ProductDiscountDraft productDiscountDraft = new ProductDiscountDraft(); productDiscountDraft.Name = new LocalizedString() { { "en", TestingUtility.RandomString(10) } }; productDiscountDraft.Description = new LocalizedString() { { "en", TestingUtility.RandomString(20) } }; productDiscountDraft.Value = GetProductDiscountValueAsAbsolute(discountCentAmount); productDiscountDraft.Predicate = predicate; productDiscountDraft.SortOrder = TestingUtility.RandomSortOrder(); productDiscountDraft.ValidFrom = DateTime.Today; productDiscountDraft.ValidUntil = DateTime.Today.AddMonths(1); productDiscountDraft.IsActive = true; productDiscountDraft.SetPredicate(product => product.ProductId() == productId && product.VariantId() == 1); return(productDiscountDraft); }
public static ProductDiscountDraft DefaultProductDiscountDraftWithDiscountValue(ProductDiscountDraft draft, ProductDiscountValue value) { var productDiscountDraft = DefaultProductDiscountDraft(draft); productDiscountDraft.Value = value; return(productDiscountDraft); }
public static void SetPredicate(this ProductDiscountDraft productDiscountDraft, Expression <Func <Product, bool> > expression) { productDiscountDraft.Predicate = expression.RenderDiscountPredicate(); }