public void ShouldThrowInvalidEnumArgumentExceptionWhenTaxableUndefined()
        {
            FakeShoppingItem fakeItem = CreateFakeItem();

            fakeItem.Taxable = Taxable.Undefined;
            Assert.Catch(() => _taxCalculator.CalculatePriceWithTax(fakeItem));
        }
Exemplo n.º 2
0
 /// <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);
 }