public void GenerateAnInvoiceForAnOrder()
        {
            var order = new Order();
            order.Add("Cheetos", 5M);
            order.Add("Doritos", 3M);
            order.Add("Mountain Dew", 5M);
            order.SalesTax = .06M;

            order.Customer = _customer;

            Invoice invoice = order.GenerateInvoice();

            Assert.AreEqual("Order for Bart Simpson",invoice.Header);
            Assert.AreEqual("Cheetos",invoice.LineItems[0].Description);
            Assert.AreEqual(5M, invoice.LineItems[0].Price);

            Assert.AreEqual("Doritos",invoice.LineItems[1].Description);
            Assert.AreEqual(3M, invoice.LineItems[1].Price);

            Assert.AreEqual("Mountain Dew",invoice.LineItems[2].Description);
            Assert.AreEqual(5M, invoice.LineItems[2].Price);

            Assert.AreEqual(13M, invoice.SubTotal);
            Assert.AreEqual(13.78M, invoice.Total);
        }
        public void Approval_VerifyLineItems()
        {
            var order = new Order();
            order.Add("Cheetos", 5M);
            order.Add("Doritos", 3M);
            order.Add("Mountain Dew", 5M);
            order.SalesTax = .06M;

            order.Customer = _customer;

            Invoice invoice = order.GenerateInvoice();
            Approvals.VerifyAll("LineItems", invoice.LineItems, "line_item");
        }
        public void Approval_GenerateInvoiceForOrder()
        {
            var order = new Order();
            order.Add("Cheetos", 5M);
            order.Add("Doritos", 3M);
            order.Add("Mountain Dew", 5M);
            order.SalesTax = .06M;

            order.Customer = _customer;

            Invoice invoice = order.GenerateInvoice();

            Approvals.Verify(invoice);
        }