static void Main(string[] args)
        {
            //LargePizza largePizza = new LargePizza();
            Pizza largePizza = new LargePizza();

            largePizza = new Cheese(largePizza);
            largePizza = new Ham(largePizza);
            largePizza = new Peppers(largePizza);

            //Console.WriteLine(largePizza.Description);
            Console.WriteLine(largePizza.GetDescription());
            Console.WriteLine("{0:C2}", largePizza.CalculateCost());

            Console.ReadKey();
            Console.WriteLine();

            Beverage coffee = new Espresso();

            coffee = new Mocha(coffee);
            coffee = new Mocha(coffee);
            coffee = new Whip(coffee);

            Console.WriteLine(coffee.GetDescription());
            Console.WriteLine("{0:C2}", coffee.Cost());

            Console.ReadKey();
        }
Exemple #2
0
        public void CreateMediumPizzaWithCheeseHamPeppersAndCorrectPrice()
        {
            IPizza sut = new MediumPizza();

            sut = new Cheese(sut);
            sut = new Ham(sut);
            sut = new Peppers(sut);

            Assert.Equal(10.25, sut.CalculateCost());
        }
        static void Main(string[] args)
        {
            Photo largePizza = new LargePhoto("fromurl", "tourl");

            largePizza = new Cheese(largePizza);
            largePizza = new Peppers(largePizza);

            Console.WriteLine(string.Format("{0},{1}", largePizza.GetName(), largePizza.CalCulateCost()));
            Console.ReadKey(true);
        }
        public void Allow_Being_Decorated_With_Cheese_And_Ham_And_Peppers()
        {
            Pizza largePizza = new LargePizza();

            largePizza = new Cheese(largePizza);
            largePizza = new Ham(largePizza);
            largePizza = new Peppers(largePizza);

            Assert.Equal("Large Pizza, Cheese, Ham, Peppers", largePizza.GetDescription());
            Assert.Equal(13.25m, largePizza.CalculateCost());
        }
        private static void Main(string[] args)
        {
            Pizza largePizza = new LargePizza();

            largePizza = new Cheese(largePizza);
            largePizza = new Peppers(largePizza);

            Console.WriteLine(largePizza.GetDescription());
            Console.WriteLine(largePizza.CalculateCost().ToString("C"));
            Console.ReadKey();
        }
        private static void Main(string[] args)
        {
            Hamburger largeHamburger = new BlueStack();

            largeHamburger = new Cheese(largeHamburger);
            largeHamburger = new Ham(largeHamburger);
            largeHamburger = new Peppers(largeHamburger);

            Console.WriteLine(largeHamburger.GetDescription());
            Console.WriteLine("{0:C2}", largeHamburger.CalculateCost());

            Console.ReadKey();
        }
Exemple #7
0
        private static void Main(string[] args)
        {
            Pizza largePizza = new LargePizza();

            largePizza = new Cheese(largePizza);
            largePizza = new Ham(largePizza);
            largePizza = new Peppers(largePizza);

            Console.WriteLine(largePizza.GetDescription());
            Console.WriteLine("{0:C2}", largePizza.CalculateCost());

            Console.ReadLine();
        }
Exemple #8
0
        private static void Main()
        {
            Pizza largePizza = new LargePizza();

            largePizza = new Cheese(largePizza);
            largePizza = new Ham(largePizza);
            largePizza = new Peppers(largePizza);


            Console.WriteLine($"Pizza Description: {largePizza.GetDescription()}");
            Console.WriteLine($"Pizza Price: {largePizza.GetPrice()}");

            Console.ReadKey();
        }
Exemple #9
0
        public void CreateMediumPizzaWithCheeseHamPeppers()
        {
            IPizza sut = new MediumPizza();

            sut = new Cheese(sut);
            sut = new Ham(sut);
            sut = new Peppers(sut);

            var expected = new MediumPizza
            {
                Description = "Medium Pizza, Cheese, Ham, Peppers"
            };

            Assert.Equal(expected.Description, sut.GetDescription());
        }
Exemple #10
0
        static void Main()
        {
            Pizza largePizza = new LargePizza();

            //Adding Cheese to Large Pizza
            largePizza = new Cheese(largePizza);

            //Adding Ham to Large Pizza
            largePizza = new Ham(largePizza);

            //Adding Peppers to Large
            largePizza = new Peppers(largePizza);

            Console.WriteLine(largePizza.GetDescription());
            Console.WriteLine("{0:C2}", largePizza.CalculatePrice());
            Console.ReadKey();
        }
Exemple #11
0
        private static void DemoDecoratorPattern()
        {
            #region Without DecoratorPattern
            //LargePizza largePizza = new LargePizza();

            //Console.WriteLine(largePizza.Description);
            //Console.WriteLine("{0:C2}", largePizza.CalculateCost());
            #endregion

            #region With DecoratorPattern
            Pizza largePizza = new LargePizza();
            largePizza = new Cheese(largePizza);
            largePizza = new Ham(largePizza);
            largePizza = new Peppers(largePizza);

            Console.WriteLine(largePizza.GetDescription());
            Console.WriteLine("{0:C2}", largePizza.CalculateCost());
            #endregion

            Console.ReadKey();
        }
Exemple #12
0
        public ActionResult CreatePizza(string size, string name, bool?bacon, bool?bbq, bool?cheese, bool?mushroom, bool?onion, bool?pepperoni, bool?pepper, bool?pineapple, bool?sausage, bool?shrimp, int amt, bool?deliver, InfoViewModel infoView)
        {
            bool isNum = IsNumber(amt);

            if (ModelState.IsValid && !string.IsNullOrEmpty(size) && isNum)
            {
                double totalCost;
                Pizza  aPizza = null;

                //Switch statement for the size of the pizza
                switch (size)
                {
                case "Small":
                    aPizza = new Small();
                    break;

                case "Medium":
                    aPizza = new Medium();
                    break;

                case "Large":
                    aPizza = new Large();
                    break;
                }

                //If the topping was selected then it is added to the pizza
                if (bacon == true)
                {
                    aPizza = new Bacon(aPizza);
                }

                if (bbq == true)
                {
                    aPizza = new BBQ(aPizza);
                }

                if (cheese == true)
                {
                    aPizza = new ExCheese(aPizza);
                }

                if (mushroom == true)
                {
                    aPizza = new Mushroom(aPizza);
                }

                if (onion == true)
                {
                    aPizza = new Onion(aPizza);
                }

                if (pepperoni == true)
                {
                    aPizza = new Pepperoni(aPizza);
                }

                if (pepper == true)
                {
                    aPizza = new Peppers(aPizza);
                }

                if (pineapple == true)
                {
                    aPizza = new Pineapple(aPizza);
                }

                if (sausage == true)
                {
                    aPizza = new Sausage(aPizza);
                }

                if (shrimp == true)
                {
                    aPizza = new Shrimp(aPizza);
                }


                //Created a variable to contain and manipulate the cost
                totalCost = aPizza.GetCost();

                infoView.Delivery = deliver;

                if (Session["cart"] == null)
                {
                    List <CartItem> cart = new List <CartItem>
                    {
                        new CartItem {
                            ID        = 1,
                            Pizza     = aPizza,
                            Quant     = amt,
                            ViewModel = infoView
                        }
                    };
                    Session["info"]  = infoView;
                    Session["cart"]  = cart;
                    Session["Total"] = cart.Sum(item => item.Pizza.GetCost() * item.Quant);
                }
                else
                {
                    List <CartItem> cart  = (List <CartItem>)Session["cart"];
                    int             index = IsExist(aPizza);
                    if (index != -1)
                    {
                        cart[index].Quant++;
                    }
                    else
                    {
                        int currentID = cart.Count();
                        cart.Add(new CartItem {
                            ID = currentID, Pizza = aPizza, Quant = amt, ViewModel = infoView
                        });
                    }

                    Session["info"]  = infoView;
                    Session["cart"]  = cart;
                    Session["Total"] = cart.Sum(item => item.Pizza.GetCost() * item.Quant);
                }



                //Method sends order to database
                //aConnection.InsertPizzaOrder(aPizza, totalCost, name, amt, deliver, addy, city, zip, time);

                //Adds everything to a ViewBag to send to confirmation page
                //ViewBag.APizza = aPizza;
                //ViewBag.Total = totalCost;
                //ViewBag.Name = name;
                //ViewBag.Amt = amt;
                //ViewBag.Deliver = deliver;
                //ViewBag.Addy = addy;
                //ViewBag.City = city;
                //ViewBag.Zip = zip;
                //ViewBag.Time = time;

                return(RedirectToAction("DisplayCart"));
            }
            else
            {
                if (string.IsNullOrEmpty(size))
                {
                    TempData["Amt"]  = "The amount must be a number";
                    TempData["Size"] = "A size must be selected";
                }

                return(View("CreatePizzaForm", infoView));
            }
        }
Exemple #13
0
        public ActionResult AddMorePizza(string size, string name, bool?bacon, bool?bbq, bool?cheese, bool?mushroom, bool?onion, bool?pepperoni, bool?pepper, bool?pineapple, bool?sausage, bool?shrimp, int amt)
        {
            if (!string.IsNullOrEmpty(size))
            {
                double totalCost;
                Pizza  aPizza = null;

                //Switch statement for the size of the pizza
                switch (size)
                {
                case "Small":
                    aPizza = new Small();
                    break;

                case "Medium":
                    aPizza = new Medium();
                    break;

                case "Large":
                    aPizza = new Large();
                    break;
                }

                //If the topping was selected then it is added to the pizza
                if (bacon == true)
                {
                    aPizza = new Bacon(aPizza);
                }

                if (bbq == true)
                {
                    aPizza = new BBQ(aPizza);
                }

                if (cheese == true)
                {
                    aPizza = new ExCheese(aPizza);
                }

                if (mushroom == true)
                {
                    aPizza = new Mushroom(aPizza);
                }

                if (onion == true)
                {
                    aPizza = new Onion(aPizza);
                }

                if (pepperoni == true)
                {
                    aPizza = new Pepperoni(aPizza);
                }

                if (pepper == true)
                {
                    aPizza = new Peppers(aPizza);
                }

                if (pineapple == true)
                {
                    aPizza = new Pineapple(aPizza);
                }

                if (sausage == true)
                {
                    aPizza = new Sausage(aPizza);
                }

                if (shrimp == true)
                {
                    aPizza = new Shrimp(aPizza);
                }


                //Created a variable to contain and manipulate the cost
                totalCost = aPizza.GetCost();

                if (Session["cart"] == null)
                {
                    List <CartItem> cart = new List <CartItem>
                    {
                        new CartItem {
                            ID        = 1,
                            Pizza     = aPizza,
                            Quant     = amt,
                            ViewModel = (InfoViewModel)Session["info"]
                        }
                    };
                    Session["cart"]  = cart;
                    Session["Total"] = cart.Sum(item => item.Pizza.GetCost() * item.Quant);
                }
                else
                {
                    List <CartItem> cart  = (List <CartItem>)Session["cart"];
                    int             index = IsExist(aPizza);
                    if (index != -1)
                    {
                        cart[index].Quant++;
                    }
                    else
                    {
                        int currentID = cart.Count();
                        cart.Add(new CartItem {
                            ID = currentID, Pizza = aPizza, Quant = amt, ViewModel = (InfoViewModel)Session["info"]
                        });
                    }
                    Session["cart"]  = cart;
                    Session["Total"] = cart.Sum(item => item.Pizza.GetCost() * item.Quant);
                }


                return(RedirectToAction("DisplayCart"));
            }
            else
            {
                if (string.IsNullOrEmpty(size))
                {
                    TempData["Amt"]  = "The amount must be a number";
                    TempData["Size"] = "A size must be selected";
                }

                return(View("AddMorePizzaForm"));
            }
        }
Exemple #14
0
 public void BeAssignableFromIPizzaForPeppers(Peppers sut)
 {
     Assert.IsAssignableFrom <IPizza>(sut);
 }