public void ProductInfoPriceInCents_ShouldIncludeVariantPriceInCents()
        {
            var product = new ProductInfo();
            var variant = new ProductVariantInfo();

            variant.PriceInCents = 5000;
            product.ProductVariants.Add(variant);

            Assert.AreEqual(5000, product.PriceInCents);
        }
        public void ProductInfoPriceInCents_ShouldIncludeDiscountedVariantPriceInCents()
        {
            var product = new ProductInfo();
            var variant = new ProductVariantInfo();

            variant.PriceInCents       = 5000;
            variant.DiscountPercentage = 50;
            product.ProductVariants.Add(variant);

            Assert.AreEqual(2500, product.PriceInCents);
        }
        public void ThatCorrectAmountIsSubractedFromPrice()
        {
            var product = DefaultFactoriesAndSharedFunctionality.CreateProductInfo(1000, 1, 6, null, _orderInfoMockExcludingVAT.Object);

            var variantinfo = new ProductVariantInfo();

            variantinfo.PriceInCents = -100;

            product.ProductVariants = new List <ProductVariantInfo> {
                variantinfo
            };

            Assert.AreEqual(900, product.PriceWithoutVatInCents);
        }
        public void ThatCorrectAmountIsAddedToPriceInclVat()
        {
            var product = DefaultFactoriesAndSharedFunctionality.CreateProductInfo(1000, 1, 19, null, _orderInfoMockIncludingVAT.Object);

            var variantinfo = new ProductVariantInfo();

            variantinfo.PriceInCents = 100;

            product.ProductVariants = new List <ProductVariantInfo> {
                variantinfo
            };

            Assert.AreEqual(1100, product.PriceWithVatInCents);
        }
        public void Setup()
        {
            _variant        = new ProductVariantInfo();
            _variant.Ranges = new List <Range> {
                new Range {
                    From = 0, To = 2, PriceInCents = 100
                }, new Range {
                    From = 3, To = 999, PriceInCents = 50
                }
            };
            _variant.PriceInCents = 200;

            _product = new ProductInfo {
                ProductVariants = new List <ProductVariantInfo> {
                    _variant
                }, ItemCount = 5
            };
            _variant.Product = _product;
        }
Exemplo n.º 6
0
 public OrderedProductVariantInfoAdapter(ProductVariantInfo source, ProductInfo product)
 {
     _source         = source;
     _source.Product = product;
 }