Ejemplo n.º 1
0
        public void CoinInLockedState()
        {
            turnstile.SetState(new Locked());
            turnstile.Coin();

            Assert.IsTrue(turnstile.GetCurrentState() is Unlocked);
            Assert.IsTrue(controllerSpoof.unlockCalled);
        }
        //
        // responds to Pass event
        //
        public override void Pass(Turnstile name)
        {
            name.Lock();

            // change the state
            name.SetState(name.GetItsLockedState());
        }
        //
        // responds to Coin event
        //
        public override void Coin(Turnstile name)
        {
            name.Thankyou();

            // change the state
            name.SetState(name.GetItsUnlockedState());
        }