Пример #1
0
        public void Can_Generate_Levier_With_BeforeTaxPrice()
        {
            var saleItem = new SaleItem(new Product("a"))
                               {
                                   Price = 19.99m,
                               };
            var levier = new LevierFactory().GenerateLevier(saleItem);

            Assert.AreEqual(19.99m, levier.BeforeTaxAmount);
        }
Пример #2
0
        public void Can_Generate_Levier_For_Product_Without_BasicDutyType()
        {
            var saleItem = new SaleItem(new Product("a"))
                               {
                                   BasicDutyType = null,
                                   IsImported = false
                               };
            var levier = new LevierFactory().GenerateLevier(saleItem);

            Assert.AreEqual(0, levier.TaxCalculaters.Count);
        }
Пример #3
0
        public void Can_Generate_Levier_For_NonImported_Product()
        {
            var saleItem = new SaleItem(new Product("a"))
                              {
                                  BasicDutyType = new BasicDutyType("Books"){TaxRate = 0.1},
                                  IsImported = false
                              };
            var levier = new LevierFactory().GenerateLevier(saleItem);

            Assert.AreEqual(1, levier.TaxCalculaters.Count);
        }
Пример #4
0
 public decimal CalculateAfterTaxPrice(ISaleItem saleItem)
 {
     var levier = new LevierFactory().GenerateLevier(saleItem);
     return levier.Tax() + saleItem.Price;
 }
Пример #5
0
 public decimal CalculateTax(ISaleItem saleItem)
 {
     var levier = new LevierFactory().GenerateLevier(saleItem);
     return levier.Tax();
 }