public void PizzaComponentToString()
        {
            string  x   = "Test";
            decimal y   = 1.00m;
            var     sut = PizzaComponent.MakeComponent(x, y);

            Assert.True(sut.ToString() == $"{sut.Name} - ${sut.Price}");
        }
        public void MakeComponentTest()
        {
            string  x   = "Test";
            decimal y   = 1.00m;
            var     sut = PizzaComponent.MakeComponent(x, y);

            Assert.True(sut.Name == x);
            Assert.True(sut.Price == y);
        }
Example #3
0
 public void ViewOrder(Order FinalizedOrder)
 {
     foreach (var PizzaKey in FinalizedOrder.PizzaTable.Keys)
     {
         Console.WriteLine($"You orderered a {PizzaKey} pizza.");
         Console.WriteLine("The number of pizzas you ordered is {0}. ", FinalizedOrder.LimitArray.Sum());
         Console.WriteLine("The following components include :\n");
         foreach (var PizzaComponent in FinalizedOrder.PizzaTable[PizzaKey])
         {
             Console.WriteLine(PizzaComponent.ToString());
         }
         Console.WriteLine("The total price is {0}", FinalizedOrder.PriceArray.Sum());
     }
 }
Example #4
0
 public PineappleDecorator(PizzaComponent pizzaComponent) : base(pizzaComponent)
 {
 }
 public PizzaDecorator(PizzaComponent pizzaComponent)
 {
     this.pizzaComponent = pizzaComponent;
 }
Example #6
0
 public CheeseDecorator(PizzaComponent pizzaComponent) : base(pizzaComponent)
 {
 }
        public void PizzaComponentInheritance_Test1()
        {
            var Component = new PizzaComponent();

            Assert.True(Component.EntityID == 0);
        }
Example #8
0
        static void Main(string[] args)
        {
            // #region AbstractFactory

            // AbstractFactory factory1 = new ConcreteFactory1();

            // Client client1 = new Client(factory1);

            // client1.Run();

            // AbstractFactory factory2 = new ConcreteFactory2();

            // Client client2 = new Client(factory2);

            // client2.Run();

            // #endregion

            // #region FactoryMethod

            // // Note: constructors call Factory Method
            // DocumentFactory[] documents = new DocumentFactory[2];

            // documents[0] = new ConcreteResume();
            // documents[1] = new ConcreteReport();

            // foreach (var document in documents)
            // {
            //     Console.WriteLine(Environment.NewLine + document.GetType().Name + " -- ");

            //     foreach (var page in document.Pages)
            //     {
            //         Console.WriteLine(page.GetType().Name);
            //     }
            // }

            // #endregion

            /*   #region Adapter
             *
             * ITarget target = new Target();
             *
             * target.Requests();
             *
             * ITarget target1 = new Adapter();
             *
             * target1.Requests();
             *
             #endregion   */

            /* #region Singleton
             * Singleton singlone = Singleton.Instance();
             * Singleton singletwo = Singleton.Instance();
             *
             * System.Console.WriteLine("SingleOne {0}: ", singlone.ID);
             * System.Console.WriteLine("SingleOne {0}: ", singletwo.ID);
             #endregion             */

            /*#region Facade
             *
             * Computer facade = new Computer();
             *
             * facade.StartComputer();
             *
             #endregion*/

            /*#region Command
             *
             * IReceive receive = new Receive();
             *
             * ICommand commandOne = new InvokeOneCommand(receive);
             * ICommand commandTwo = new InvokeTwoCommand(receive);
             *
             * commandOne.Execute();
             * commandTwo.Execute();
             *
             #endregion*/

            // #region Strategy

            // var strategyA = new Context(new StrategyA());

            // strategyA.ConcretInterface();

            // var strategyB = new Context(new StrategyB());

            // strategyB.ConcretInterface();

            // #endregion

            // #region Observer

            // Subject subject = new Subject(new List<IObserver>());

            // IObserver observer1 = new Observer("Observer 1", subject);
            // IObserver observer2 = new Observer("Observer 2", subject);
            // IObserver observer3 = new Observer("Observer 3", subject);

            // subject.Subscribe(observer1);
            // subject.Subscribe(observer2);
            // subject.Subscribe(observer3);

            // subject.EditEdition();

            // Console.WriteLine();

            // subject.EditEdition();

            // Console.WriteLine();

            // subject.UnSubscribe(observer2);

            // Console.WriteLine();

            // subject.EditEdition();

            // #endregion

            #region Decorator

            IPizzaComponent pizza  = new PizzaComponent();
            CheeseDecorator chesse = new CheeseDecorator(pizza);
            TomateDecorator tomate = new TomateDecorator(chesse);

            Console.WriteLine($"Decorator Pattern Pizza: {tomate.GetDescription()} - {tomate.CalculateCost()}");
            #endregion

            Console.ReadKey();
        }