示例#1
0
        static void TestGumballMachine(IGumballMachine m)
        {
            Console.WriteLine(m.ToString());

            m.InsertQuarter();
            m.TurnCrank();

            Console.WriteLine(m.ToString());

            m.InsertQuarter();
            m.EjectQuarter();
            m.TurnCrank();

            Console.WriteLine(m.ToString());

            m.InsertQuarter();
            m.TurnCrank();
            m.InsertQuarter();
            m.TurnCrank();
            m.EjectQuarter();

            Console.WriteLine(m.ToString());

            m.InsertQuarter();
            m.InsertQuarter();
            m.TurnCrank();
            m.InsertQuarter();
            m.TurnCrank();
            m.InsertQuarter();
            m.TurnCrank();

            Console.WriteLine(m.ToString());
        }
示例#2
0
 public Client(TextWriter textWriter, TextReader textReader, IGumballMachine gumballMachine)
 {
     _textReader     = textReader;
     _textWriter     = textWriter;
     _gumballMachine = gumballMachine;
     _menu           = new Menu(_textWriter, _textReader);
     _menu.AddItem("insertQuarter", "Insert quarter to gumball machine", InsertQuarter);
     _menu.AddItem("ejectQuarter", "Eject all quarters from gumball machine", EjectQuarter);
     _menu.AddItem("turnCrank", "Turn crank of gumball machine", TurnCrank);
     _menu.AddItem("refill", "Refill gumball machine with <balls number>", Refill);
     _menu.AddItem("toString", "Show gumball machine info", GMToString);
     _menu.AddItem("help", "Show help", ShowInstructions);
     _menu.AddItem("exit", "Exit programm", Exit);
 }
 public GumballMonitor(IGumballMachine gumballMachine)
 {
     this.gumballMachine = gumballMachine;
 }
示例#4
0
 public void Run(TextReader inputData, TextWriter outputData, IGumballMachine machine)
 {
     _gumballMachine = machine;
     _out            = outputData;
     _menu.Run(inputData);
 }