public static ISalesItem GetSalesItem(string name, decimal price, ItemType itemType) { ISalesItem item = new SalesItem(name, price); foreach (int flag in Enum.GetValues(typeof(ItemType))) { if ((flag & (int)itemType) == flag) { item = (ISalesItem)Activator.CreateInstance(typeof(SalesItemTaxDecorator), new object[] { item, itemTaxLookup[(ItemType)flag] }); } } return item; }
public static ISalesItem GetSalesItem(string name, decimal price, ItemType itemType) { ISalesItem item = new SalesItem(name, price); foreach (int flag in Enum.GetValues(typeof(ItemType))) { if ((flag & (int)itemType) == flag) { item = (ISalesItem)Activator.CreateInstance(typeof(SalesItemTaxDecorator), new object[] { item, itemTaxLookup[(ItemType)flag] }); } } return(item); }
public void SalesItemGetTotalTest() { SalesItem target = new SalesItem("test item", 10M); decimal actual = target.GetTotal(); Assert.AreEqual(10M, actual); }