Ejemplo n.º 1
0
        public void TestDrawPropagation()
        {
            GameStateManager manager   = new GameStateManager(new GameServiceContainer());
            TestGameState    gameState = new TestGameState(manager);

            manager.Switch(gameState);

            manager.Draw(new GameTime());
            Assert.AreEqual(1, gameState.DrawCallCount);
        }
Ejemplo n.º 2
0
        public void TestPushModality(GameStateModality modality)
        {
            var alwaysObscured      = new TestGameState();
            var potentiallyObscured = new TestGameState();
            var active = new TestGameState();

            using (var manager = new GameStateManager()) {
                manager.Push(alwaysObscured);
                manager.Push(potentiallyObscured);
                manager.Push(active, modality);

                Assert.AreEqual(0, alwaysObscured.UpdateCallCount);
                Assert.AreEqual(0, alwaysObscured.DrawCallCount);
                Assert.AreEqual(0, potentiallyObscured.UpdateCallCount);
                Assert.AreEqual(0, potentiallyObscured.DrawCallCount);
                Assert.AreEqual(0, active.UpdateCallCount);
                Assert.AreEqual(0, active.DrawCallCount);

                manager.Update(new GameTime());
                manager.Draw(new GameTime());

                Assert.AreEqual(0, alwaysObscured.UpdateCallCount);
                Assert.AreEqual(0, alwaysObscured.DrawCallCount);
                if (modality == GameStateModality.Exclusive)
                {
                    Assert.AreEqual(0, potentiallyObscured.UpdateCallCount);
                    Assert.AreEqual(0, potentiallyObscured.DrawCallCount);
                }
                else
                {
                    Assert.AreEqual(1, potentiallyObscured.UpdateCallCount);
                    Assert.AreEqual(1, potentiallyObscured.DrawCallCount);
                }
                Assert.AreEqual(1, active.UpdateCallCount);
                Assert.AreEqual(1, active.DrawCallCount);
            }
        }
Ejemplo n.º 3
0
    public void TestDrawPropagation() {
      GameStateManager manager = new GameStateManager(new GameServiceContainer());
      TestGameState gameState = new TestGameState(manager);
      manager.Switch(gameState);

      manager.Draw(new GameTime());
      Assert.AreEqual(1, gameState.DrawCallCount);
    }