コード例 #1
0
    public void SendWaitress()
    {
        Waitress selWaitress = null;

        while (selWaitress == null)
        {
            int      rnd         = Random.Range(0, numOfWaitresses - 1);
            Waitress tmpWaitress = _waitresses[rnd];
            if (!tmpWaitress.InPlay)
            {
                selWaitress = tmpWaitress;
                int numOfDrinks          = Random.Range(minNumOfDrinks, maxNumOfDrinks);
                List <GameObject> drinks = new List <GameObject>();
                for (int i = 0; i < numOfDrinks; i++)
                {
                    GameObject  drinkObject = _drinkFactory.GetDrinkObject(_drinkManager.GetRandomDrink());
                    Rigidbody2D rb          = drinkObject.AddComponent <Rigidbody2D>();
                    rb.gravityScale = 0;
                    drinkObject.transform.localScale = new Vector2(0.5f, 0.5f);
                    drinks.Add(drinkObject);
                }
                selWaitress.transform.transform.position = new Vector2(-5, -5);
                selWaitress.OnReachedTable += OnReachedTable;
                selWaitress.Activate(GetRandomTable(), drinks);
            }
        }
    }
コード例 #2
0
        static void Main(string[] args)
        {
            MenuComponent PancakeMenu = new Menu("PANCAKE HOUSE MENU", "Breakfast");
            MenuComponent DinerMenu   = new Menu("DINER MENU", "Lunch");
            MenuComponent CafeMenu    = new Menu("CAFE MENU", "Dinner");
            MenuComponent DessertMenu = new Menu("DESSERT MENU", "Desserts");

            MenuComponent AllMeus = new Menu("ALL MENUS", "All menus combined");

            AllMeus.Add(PancakeMenu);
            AllMeus.Add(DinerMenu);
            AllMeus.Add(CafeMenu);

            DinerMenu.Add(new MenuItem("Pasta", "Sphagetti with Marinara sauce, and a slice of sourdough bread", true, 3.89));
            DessertMenu.Add(new MenuItem("Apple pie", "Apple pie with a flaky crust, topped with vanilla ice cream", true, 1.59));
            PancakeMenu.Add(new MenuItem("Pancake", "Pancake with berries", false, 4.69));
            PancakeMenu.Add(new MenuItem("Blueberry pancakes(v)", "Pancakes made with fresh blueberries", true, 3.49));
            CafeMenu.Add(new MenuItem("Coffee", "Fresh brewed starbuzz coffee", true, 2.99));
            CafeMenu.Add(new MenuItem("Tea", "Chai Tea with fresh basil leaf", true, 2.99));
            DinerMenu.Add(DessertMenu);

            Waitress waitress = new Waitress(AllMeus);

            waitress.PrintVegetarianMenu();
        }
コード例 #3
0
        static void Main(string[] args)
        {
            IMenuComponent pancakeMenu = new Menu("Pancake house menu", "Breakfast");
            IMenuComponent dinerMenu   = new Menu("Dinner menu", "Lunch");
            IMenuComponent cafeMenu    = new Menu("Cafe menu", "Dinner");
            IMenuComponent desertMenu  = new Menu("Dessert menu", "Dessert of course!");

            IMenuComponent allMenus = new Menu("All menus", "All menus combined!");

            allMenus.Add(pancakeMenu);
            allMenus.Add(dinerMenu);
            allMenus.Add(cafeMenu);

            dinerMenu.Add(new MenuItem("Vegetarian BLT", "(Fakin’) Bacon with lettuce & tomato on whole wheat", true, 2.99));
            dinerMenu.Add(new MenuItem("BLT", "Bacon with lettuce & tomato on whole wheat", false, 2.99));
            dinerMenu.Add(new MenuItem("Soup of the day", "Soup of the day, with a side of potato salad", false, 3.29));
            dinerMenu.Add(new MenuItem("Hotdog", "A hot dog, with saurkraut, relish, onions, topped with cheese", false, 3.05));

            dinerMenu.Add(desertMenu);

            pancakeMenu.Add(new MenuItem("Pancake Breakfast", "Pancakes with scrambled eggs, and toast", true, 2.99));
            pancakeMenu.Add(new MenuItem("Regular Pancake Breakfast", "Pancakes with fried eggs, sausage", false, 2.99));
            pancakeMenu.Add(new MenuItem("Blueberry Pancakes", "Pancakes made with fresh blueberries", true, 3.49));
            pancakeMenu.Add(new MenuItem("Waffles", "Waffles, with your choice of blueberries or strawberries", true, 3.59));

            Waitress waitress = new Waitress(allMenus);

            waitress.PrintMenu();

            Console.ReadLine();
        }
コード例 #4
0
        public void Kitchen_CreateMainFood()
        {
            //arrange
            ILogger loggerMock = MockRepository.GenerateMock <ILogger>();

            Kitchen  kitchen  = new Kitchen();
            Waitress waitress = new Waitress(kitchen, loggerMock);

            Client client = new Client(150, "Andrew");
            Order  order  = new Order("HOTDOG", new List <string> {
                "KETCHUP"
            }, loggerMock);

            IFood food   = new HotDog();
            IFood extras = new Ketchup(food);

            loggerMock.Expect(x => x.Write("Kitchen: Preparing food, order: Order[food=HOTDOG, extras=[KETCHUP]]"));
            loggerMock.Expect(x => x.Write("Kitchen: Food prepared, food: food=Hotdog, extras=[Ketchup]"));
            //act
            var foodFromKitchen   = kitchen.CreateMainFood(order.FoodToOrder);
            var extrasFromKitchen = kitchen.AddExtras(foodFromKitchen, order.ExtrasForAdding);
            var finalFood         = kitchen.Cook(order, loggerMock);

            //assert

            //For some reason these asserts dont return true

            //Assert.AreEqual(food, foodFromKitchen);
            //Assert.AreEqual(extrasFromKitchen, extras);
            //Assert.AreEqual(finalFood, extras);
            loggerMock.VerifyAllExpectations();
        }
コード例 #5
0
        public void Run()
        {
            Client client1 = new Client(100, "Peter");

            Client client2 = new Client(200, "Berci");

            Kitchen  kitchen       = new Kitchen();
            Waitress waitressRobot = new Waitress(kitchen);

            Order order1 = new Order("CHIPS", new List <string> {
                "MUSTARD"
            });

            order1.ExtrasForAdding = new List <string> {
                "MUSTARD"
            };
            //to do
            // implement event
            Order order2 = new Order("HOTDOG", new List <string> {
                "KETCHUP"
            });

            client1.Subscribe(order1);
            client2.Subscribe(order2);

            waitressRobot.TakeOrder(client1, order1);
            waitressRobot.TakeOrder(client2, order2);
            waitressRobot.ServeOrders();

            kitchen.Cook(waitressRobot.orders.Dequeue());
            kitchen.Cook(waitressRobot.orders.Dequeue());

            //order1.FoodReady += order1.NotifyReady();
        }
コード例 #6
0
        // see the MutexFun project TODO: REOWRK USING System.IO.MemoryMappedFiles.MemoryMappedFile
        #endregion

        #region "12.8 Using events to make threads cooperate"
        public static void TestResetEvent()
        {
            // We have a diner with a cook who can only serve up one meal at a time
            Cook Mel = new Cook()
            {
                Name = "Mel"
            };

            string[] waitressNames = { "Flo", "Alice", "Vera", "Jolene", "Belle" };

            // Have waitresses place orders
            foreach (var waitressName in waitressNames)
            {
                Task.Run(() =>
                {
                    // The Waitress places the order and then waits for the order
                    Waitress.PlaceOrder(waitressName, Cook.OrderReady);
                });
            }

            // Have the cook fill the orders
            for (int i = 0; i < waitressNames.Length; i++)
            {
                // make the waitresses wait...
                Thread.Sleep(2000);
                // ok, next waitress, pickup!
                Mel.CallWaitress();
            }
        }
コード例 #7
0
ファイル: Program.cs プロジェクト: sandieng/CompositePattern
        static void Main(string[] args)
        {
            MenuComponent pancakeHouseMenu = new Menu("Pancake House Menu", "Breakfast");
            MenuComponent dinerMenu        = new Menu("Diner Menu", "Lunch");
            MenuComponent cafeMenu         = new Menu("Cafe Menu", "Dinner");
            MenuComponent dessertMenu      = new Menu("Dessert Menu", "Dessert");
            MenuComponent allMenus         = new Menu("All Menus", "All menus combined");

            allMenus.Add(pancakeHouseMenu);
            allMenus.Add(dinerMenu);
            allMenus.Add(cafeMenu);

            // Add menu items to diner menu
            dinerMenu.Add(new MenuItem("Pasta Cucianna", "Spaghetti with rinso sauce and mixed seafood", false, 20.95));
            dinerMenu.Add(new MenuItem("Chow Mian", "Smelly fried noodle with smelly tofu", true, 14.95));

            // Add dessert menu
            dessertMenu.Add(new MenuItem("Gelato", "Non diary gelato of the day", true, 4.50));
            dessertMenu.Add(new MenuItem("Snow ice campur", "Shaved ice with beans and fruits", true, 4.50));

            // Add dessert to diner menu
            dinerMenu.Add(dessertMenu);

            Waitress waitress = new Waitress(allMenus);

            waitress.Print();

            Console.ReadKey();
        }
コード例 #8
0
        public List <FoodMenuModel> PrintMealMenu(string restaurantId)
        {
            Waitress waitress = new Waitress(restaurantId);
            var      foodMenu = waitress.PrintFoodMenu();

            return(foodMenu);
        }
コード例 #9
0
ファイル: WaitressTests.cs プロジェクト: Lien6410/CommandMode
        public void CommandModeTest()
        {
            Console.WriteLine("======== 命令模式測試 =========");

            //開店準備
            Chef      chef       = new Chef();
            Bartender bartender  = new Bartender();
            Order     dishOrder  = new DishOrder(chef);
            Order     drinkOrder = new DrinkOrder(bartender);
            Waitress  cuteGirl   = new Waitress();

            //開始營業 客戶點餐
            cuteGirl.SetOrder(dishOrder);
            cuteGirl.SetOrder(dishOrder);
            cuteGirl.SetOrder(drinkOrder);
            cuteGirl.SetOrder(drinkOrder);

            //飲料還沒賣完
            cuteGirl.SetOrder(drinkOrder);

            Console.WriteLine("===== 客人取消熱炒測試 =====");
            //取消一份熱炒
            cuteGirl.CancelOrder(dishOrder);
            //熱炒又可以賣了
            cuteGirl.SetOrder(dishOrder);

            Console.WriteLine("=== 點餐完成 通知廚房 ===");
            cuteGirl.NotifyKitchen();

            Console.WriteLine("=== 熱炒庫存不足測試 ===");
            cuteGirl.SetOrder(dishOrder);

            Assert.AreEqual(1, 1);
        }
コード例 #10
0
        static void Main(string[] args)
        {
            MenuComponent pancakeHouseMenu = new Menu("Pancake House Menu", "Breakfast");
            MenuComponent dinnerMenu       = new Menu("Dinner Menu", "Lunch");

            MenuComponent cafeMenu    = new Menu("Cafe Menu", "Dinner");
            MenuComponent dessertMenu = new Menu("Dessert menu", "Dessert");

            MenuComponent allMenus = new Menu("All Menus", "All menus combined");

            allMenus.Add(pancakeHouseMenu);
            allMenus.Add(dinnerMenu);
            allMenus.Add(cafeMenu);

            dinnerMenu.Add(new MenuItem("Pasta", "Spaghetti", true, 3.90));
            dinnerMenu.Add(dessertMenu);

            dessertMenu.Add(new MenuItem("Apple Pie", "Apple pie with flakey", true, 1.60));

            Waitress waitress = new Waitress(allMenus);

            //waitress.Print();

            waitress.PrintVegetarianMenu();
        }
コード例 #11
0
        static void Main(string[] args)
        {
            var menu = new Menu {
                Name = "ALL", Description = "All Menus"
            };

            var coffeeMenu = new Menu {
                Name = "Coffee", Description = "Coffee Menu"
            };

            var coffeeDesertMenu = new Menu {
                Name = "Deserts", Description = "Coffee Deserts Menu"
            };

            coffeeMenu.Add(coffeeDesertMenu);
            menu.Add(coffeeMenu);

            coffeeMenu.Add(new MenuItem {
                Name = "Dark Coffee", Price = 10
            });
            coffeeMenu.Add(new MenuItem {
                Name = "Espresso", Price = 12
            });
            coffeeMenu.Add(new MenuItem {
                Name = "Latte", Price = 16
            });

            coffeeDesertMenu.Add(new MenuItem {
                Name = "Milk Ice-Cream", Price = 20
            });
            coffeeDesertMenu.Add(new MenuItem {
                Name = "Chocolate Ice-Cream", Price = 22
            });

            var dinnerMenu = new Menu {
                Name = "Dinner", Description = "Dinner Menu"
            };

            menu.Add(dinnerMenu);

            dinnerMenu.Add(new MenuItem {
                Name = "Borsch", Price = 30
            });
            dinnerMenu.Add(new MenuItem {
                Name = "Green Borsch", Price = 35, IsVegeterian = true
            });
            dinnerMenu.Add(new MenuItem {
                Name = "Soup", Price = 29
            });

            var waitress = new Waitress(menu);

            waitress.Print();

            Console.WriteLine("Vegeterian Products:");

            waitress.PrintVegeterianMenu();

            Console.ReadKey();
        }
コード例 #12
0
        public void IteratorTest()
        {
            PancakeHouseMenu pancakeHouseMenu = new PancakeHouseMenu();
            DinerMenu        dinerMenu        = new DinerMenu();
            CafeMenu         cafeMenu         = new CafeMenu();

            Waitress waitress = new Waitress(pancakeHouseMenu, dinerMenu, cafeMenu);

            waitress.PrintMenu();
            waitress.PrintVegetarianMenu();

            Console.WriteLine("\nCustomer asks, is the Hotdog vegetarian?");
            Console.WriteLine("Waitress says: ");
            if (waitress.IsItemVegetarian("Hotdog"))
            {
                Console.WriteLine("Yes");
            }
            else
            {
                Console.WriteLine("No");
            }
            Console.WriteLine("\nCustomer asks, are the Waffles vegetarian?");
            Console.WriteLine("Waitress says: ");
            if (waitress.IsItemVegetarian("Waffles"))
            {
                Console.WriteLine("Yes");
            }
            else
            {
                Console.WriteLine("No");
            }
        }
コード例 #13
0
        public void TestWaitressPrintMenu()
        {
            StringBuilder printMenuOutput = new StringBuilder();

            PancakeHouseMenu pancakeHouseMenu = new PancakeHouseMenu();
            DinnerMenu       dinnerMenu       = new DinnerMenu();
            CafeMenu         cafeMenu         = new CafeMenu();

            Waitress waitress = new Waitress(pancakeHouseMenu, dinnerMenu, cafeMenu);

            printMenuOutput.Append("MENU\n");
            printMenuOutput.Append("----\n");
            printMenuOutput.Append("BREAKFAST\n");
            printMenuOutput.Append("K&B's Pancake Breakfast, 2.99 -- Pancakes with scrambled eggs, and toast\n");
            printMenuOutput.Append("Regular Pancake Breakfast, 2.99 -- Pancakes with fried eggs, and sausage\n");
            printMenuOutput.Append("Blueberry Pancakes, 3.49 -- Pancakes made with fresh blueberries\n");
            printMenuOutput.Append("Waffles, 3.59 -- Waffles, with your choice of blueberries or strawberries\n");
            printMenuOutput.Append("\n");
            printMenuOutput.Append("LUNCH\n");
            printMenuOutput.Append("Vegetarian BLT, 2.99 -- (Fakin') Bacon with lettuce & tomato on whole wheat\n");
            printMenuOutput.Append("BLT, 2.99 -- Bacon with lettuce & tomato on whole wheat\n");
            printMenuOutput.Append("Soup of the day, 3.29 -- Soup of the day, with a side of potato salad\n");
            printMenuOutput.Append("Hotdog, 3.05 -- A hot dog with saurkraut, relish, onions, topped with cheese\n");
            printMenuOutput.Append("Steamed Veggies and Brown Rice, 3.99 -- Steamed vegetables over brown rice\n");
            printMenuOutput.Append("Pasta, 3.89 -- Spaghetti with Marina Sauce and a slice of sourdough bread\n");
            printMenuOutput.Append("\nDinner\n");
            printMenuOutput.Append("Veggie Burger and Air Fries, 3.99 -- Veggie burger on a whole wheat bun, lettuce, tomato, and fries\n");
            printMenuOutput.Append("Soup of the Day, 3.69 -- A cup of the soup of the day, with a side salad\n");
            printMenuOutput.Append("Burrito, 4.29 -- A large burrito, with whole pinto beans, salsa, guacamole\n");

            Assert.AreEqual(printMenuOutput.ToString(), waitress.PrintMenu());
        }
コード例 #14
0
        public void Order_NotifyReady()
        {
            //arrange
            ILogger      loggerMock      = MockRepository.GenerateMock <ILogger>();
            IEvent       eventMock       = MockRepository.GenerateMock <IEvent>();
            IOnFoodReady onFoodReadyMock = MockRepository.GenerateMock <IOnFoodReady>();

            Kitchen  kitchen  = new Kitchen();
            Waitress waitress = new Waitress(kitchen, loggerMock);

            Client client = new Client(150, "Andrew");
            Order  order  = new Order("HOTDOG", new List <string> {
                "KETCHUP"
            }, loggerMock);

            IFood food   = new HotDog();
            IFood extras = new Ketchup(food);

            var expectedMessage = "Order: Notifying observers of Order: [food=HOTDOG, extras=KETCHUP]";

            loggerMock.Expect(x => x.Write(expectedMessage));

            //act
            order.NotifyReady(extras);

            loggerMock.VerifyAllExpectations();
        }
コード例 #15
0
        public void Waitress_ServeOrders()
        {
            //arrange
            ILogger  loggerMock = MockRepository.GenerateMock <ILogger>();
            Kitchen  kitchen    = new Kitchen();
            Waitress waitress   = new Waitress(kitchen, loggerMock);

            Order order = new Order("HOTDOG", new List <string> {
                "KETCHUP"
            }, loggerMock);

            waitress.orders.Enqueue(order);
            waitress.orders.Enqueue(order);

            var expectedMessage = "WaitressRobot: Processing 2 order(s)...";

            loggerMock.Expect(x => x.Write(expectedMessage));
            expectedMessage = "WaitressRobot: Orders processed.";
            loggerMock.Expect(x => x.Write(expectedMessage));
            //act
            waitress.ServeOrders();

            //assert
            Assert.IsTrue(waitress.orders.Count == 0);
            loggerMock.VerifyAllExpectations();
        }
コード例 #16
0
        static void Main(string[] args)
        {
            IMenu[]  menus    = { new DinerMenu(), new PancakeHouseMenu() };
            Waitress waitress = new Waitress(menus);

            waitress.PrintMenu();
        }
コード例 #17
0
        public static void Start()
        {
            MenuComponent pancakeHouseMenu = new Menu("PANCAKE HOUSE MENU", "Breakfast");

            pancakeHouseMenu.Add(
                new MenuItem(
                    "Pancake",
                    "Pancake with strawberry ice cream",
                    false,
                    1.29
                    )
                );

            MenuComponent cafeMenu = new Menu("CAFE MENU", "Dinner");

            cafeMenu.Add(
                new MenuItem(
                    "Cappuccino",
                    "Cappuccino latte with cream and chocolate",
                    false,
                    1.59
                    )
                );

            MenuComponent dessertMenu = new Menu("DESSERT MENU", "Dessert of course!");

            dessertMenu.Add(
                new MenuItem(
                    "Apple Pie",
                    "Apple pie with a flakey crust, topped with vanilla icecream",
                    true,
                    1.59
                    )
                );

            MenuComponent dinerMenu = new Menu("DINER MENU", "Lunch");

            dinerMenu.Add(
                new MenuItem(
                    "Pasta",
                    "Spaghetti with Marinara Sauce, and a slice of sourdough bread",
                    true,
                    3.89
                    )
                );
            dinerMenu.Add(dessertMenu);

            MenuComponent allMenus = new Menu("ALL MENUS", "All menus combined");

            allMenus.Add(pancakeHouseMenu);
            allMenus.Add(dinerMenu);
            allMenus.Add(cafeMenu);

            Waitress waitress = new Waitress(allMenus);

            //waitress.PrintMenu();
            waitress.PrintVegetarianMenu();
            //TestCompositeIterator.Start(allMenus);
        }
コード例 #18
0
        static void Iterator()
        {
            IMenu    pancakeHouseMenu = new PancakeHouseMenu();
            IMenu    dinnerMenu       = new DinnerMenu();
            Waitress waitress         = new Waitress(pancakeHouseMenu, dinnerMenu);

            waitress.PrintMenu();
        }
コード例 #19
0
        public void WaitressPrintTest()
        {
            var pancakeHouseMenu = new PancakeHouseMenu();
            var dinerMenu        = new DinerMenu();
            var waitress         = new Waitress(pancakeHouseMenu, dinerMenu);

            waitress.PrintMenu();
        }
コード例 #20
0
        static void Main(string[] args)
        {
            LunchMenu lunchMenu = new LunchMenu();

            Waitress waitress = new Waitress(lunchMenu);

            waitress.PrintMenu();
        }
コード例 #21
0
        static void Main(string[] args)
        {
            Waitress waitress = new Waitress();

            waitress.AddMenu(new BreakfastMenu());
            waitress.AddMenu(new DinerMenu());

            waitress.ListMenus();
        }
コード例 #22
0
        static void Main(string[] args)
        {
            var menu = MenuFactory.Create();

            var waitress = new Waitress(menu);

            waitress.PrintMenu();
            waitress.PrintVegetarianMenu();
        }
コード例 #23
0
        public static void Run()
        {
            PancakeHouseMenu pancakeHouseMenu = new PancakeHouseMenu();
            DinerMenu        dinerMenu        = new DinerMenu();

            Waitress waitress = new Waitress(pancakeHouseMenu, dinerMenu);

            waitress.PrintMenu();
        }
コード例 #24
0
        static void Main(string[] args)
        {
            PancakeHouseMenu pm = new PancakeHouseMenu();
            DinerMenu        dm = new DinerMenu();

            Waitress w = new Waitress(pm, dm);

            w.PrintMenu();
        }
コード例 #25
0
        static void Main(string[] args)
        {
            var pancakeHouseMenu = new PancakeHouseMenu();
            var dinerMenu        = new DinerMenu();

            var waitress = new Waitress(pancakeHouseMenu, dinerMenu);

            waitress.PrintMenu();
        }
コード例 #26
0
        static void Main(string[] args)
        {
            PancakeHouseMenu pancakeHouseMenu = new PancakeHouseMenu();
            DinerMenu        dinerMenu        = new DinerMenu();

            Waitress waitress = new Waitress(pancakeHouseMenu, dinerMenu);

            waitress.PrintMenu();
        }
コード例 #27
0
        private static void Main(string[] args)
        {
            Console.WriteLine("**** Wood Duck ****");
            var woodDuck = new WoodDuck();

            woodDuck.ShowInfo();

            Console.WriteLine("**** Jet Pack Duck ****");
            var robotDuck = new JetPackDuck();

            robotDuck.ShowInfo();

            Console.WriteLine("**** Default Duck ****");
            var defaultDuck = new DefaultDuck();

            defaultDuck.ShowInfo();

            Console.WriteLine("**** Turkey Before adapter ****");
            var turkey = new DefaultTurkey();

            turkey.ShowInfo();
            turkey.MakeGobble();
            Console.WriteLine("**** Turkey After adapter ****");
            var turkeyAdapted = new TurkeyAdapter(turkey);

            turkeyAdapted.ShowInfo();
            turkeyAdapted.MakeQuack();

            var demonDuckmenu  = new DemonDucksMenu();
            var hollyDucksMenu = new HollyDucksMenu();
            var waitress       = new Waitress(demonDuckmenu, hollyDucksMenu);

            waitress.PrintMenu();

            MeatBase grillDuck = new GrillDuck();

            grillDuck = new ExtraCheese(grillDuck);
            grillDuck = new GrillVegetables(grillDuck);
            Console.WriteLine($"Name:{grillDuck.Name}\n Count:{grillDuck.Price()}");
            MeatBase grillTurkey = new GrillTurkey();

            grillTurkey = new ExtraCheese(grillTurkey);
            Console.WriteLine($"Name:{grillTurkey.Name}\n Count:{grillTurkey.Price()}");

            Console.WriteLine("**** DUCK FABRIC ****");

            var single = Singleton.getInstance();

            //Pack duck: choose duck and ducks count
            single.PackDuck(woodDuck, 13);
            single.PackDuck(defaultDuck, 6);
            single.PackDuck(robotDuck, 46);
            single.PackDuck(turkeyAdapted, 6);
            single.PackDuck(woodDuck, 14);// exept test
        }
コード例 #28
0
ファイル: Program.cs プロジェクト: abakumov-v/patterns
        static void TryPrintMenuFromWaitress()
        {
            Console.WriteLine("\n---- Waitress ----");
            var breakfastMenu = new PancakeHouseMenu();
            var dinerMenu     = new DinerMenu();
            var cafeMenu      = new CafeMenu();

            var waitress = new Waitress(dinerMenu, breakfastMenu, cafeMenu);

            waitress.PrintMenu();
        }
コード例 #29
0
        static void Main(string[] args)
        {
            PancakeHouseMenu pancakeHouseMenu = new PancakeHouseMenu();
            DinnerMenu       dinnerMenu       = new DinnerMenu();

            Waitress waitress = new Waitress(new List <IMenu> {
                pancakeHouseMenu, dinnerMenu
            });

            waitress.PrintMenu();
        }
コード例 #30
0
ファイル: CommandTests.cs プロジェクト: rv-ggordon/patterns
        public void CookCanMakeOrder()
        {
            var      cook     = new Mock <Cook>();
            var      order    = new Mock <MakeOrder>(It.IsAny <Cook>());
            Waitress waitress = new Waitress();

            waitress.Build(order.Object);
            waitress.PlaceOrder();

            order.VerifyAll();
            cook.VerifyAll();
        }