Exemplo n.º 1
0
        public void SetMachineInHasQuarterStateWhenInsertQuarter()
        {
            var machine = new TestGumballMachine();
            var state   = new NoQuarterState(machine);

            state.InsertQuarter();
            Assert.AreEqual((Enums.State)machine.State, Enums.State.HasQuarter);
        }
Exemplo n.º 2
0
        public void SetMachineInHasQuarterStateWhenInsertQuarter()
        {
            var machine = new TestGumballMachine();
            var state   = new NoQuarterState(machine);

            state.InsertQuarter();
            Assert.AreEqual(machine.GetQuartersController().GetQuartersCount(), (uint)1);
            Assert.AreEqual(machine.State, State.HasQuarter);
        }
Exemplo n.º 3
0
        public void InsertQuarter_MachineWithoutQuarter_MachineQuartersCountIncreased()
        {
            //Arrange
            _gumballMachineWithStateMock.SetupProperty(c => c.QuartersCount, 0u);
            _gumballMachineWithStateMock.Setup(c => c.SetHasQuarterState()).Verifiable();

            //Act
            _noQuarterState.InsertQuarter();

            //Assert
            Assert.Equal(1u, _gumballMachineWithStateMock.Object.QuartersCount);
            _gumballMachineWithStateMock.Verify(c => c.SetHasQuarterState());
        }
Exemplo n.º 4
0
        public void InsertQuarterTest()
        {
            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_HAS_QUARTER_STATE })";
            var noQuarterState = new NoQuarterState(gumballMachine, stringWriter);

            noQuarterState.InsertQuarter();
            result.WriteLine(BaseConstants.INSERT_QUARTER_NO_QUARTER_STATE);

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