/// <summary> /// Constructor for a taxable item. /// </summary> /// <param name="taxable">an enumeration representing whether or not the item is taxable</param> /// <param name="priceWithoutTax">the price without tax</param> /// <param name="itemName">the item name</parma> /// <param name="taxCalculator">the tax calculator</param> public ShoppingItem( Taxable taxable, decimal priceWithoutTax, string itemName, ITaxCalculator taxCalculator ) { Taxable = taxable; PriceWithoutTax = priceWithoutTax; ItemName = itemName; TaxAmountAsPercent = taxCalculator.DetermineTaxPercentage(Taxable); FinalItemPrice = taxCalculator.CalculatePriceWithTax(this); }
public void CanDetermineSalesTaxPercentageForExempt() { Assert.AreEqual(_taxCalculator.DetermineTaxPercentage(Taxable.TaxExempt), 0.0M); }