示例#1
0
        public void TurnCrankTest()
        {
            var stringWriter              = new StringWriter();
            var result                    = new StringWriter();
            var gumballMachine            = new GumballMachineContext(2, stringWriter);
            var gumballMachineStateString = $"(Mighty Gumball, Inc.C# - enabled Standing Gumball Model #2019 (with state)Inventory:" +
                                            $" { 2 } gumball{ ( 2 != 1 ? "s" : "" ) } " +
                                            $"Machine is { BaseConstants.TO_STRING_NO_QUARTER_STATE })";
            var soldOutState = new SoldOutState(gumballMachine, stringWriter);

            soldOutState.TurnCrank();
            result.WriteLine(BaseConstants.TURN_CRANK_SOLD_OUT_STATE);

            Assert.AreEqual(result.ToString(), stringWriter.ToString());
            Assert.AreEqual(gumballMachineStateString, gumballMachine.ToString());
        }