Esempio n. 1
0
        public void ShouldSetCurrentToStartStateWhenCreated()
        {
            var state = new StartState();
            var manager = new StateManager<IGameLogicState>(state);

            Assert.AreSame(state, manager.Current);
        }
Esempio n. 2
0
        public void ShouldFailWhenTryingToAddTheSameStateTwice()
        {
            var state = new StartState();

            var manager = new StateManager<IGameLogicState>(null);

            manager.AddState(state);
            manager.AddState(state);
        }
Esempio n. 3
0
        public void ShouldSupportStatesBeingRemoved()
        {
            var state1 = new StartState();
            var state2 = new MenuState();

            var manager = new StateManager<IGameLogicState>(null);

            manager.AddState(state1);
            manager.AddState(state2);

            Assert.AreEqual(2, manager.StateCount);

            manager.RemoveState(state1);

            Assert.AreEqual(1, manager.StateCount);
        }