Beispiel #1
0
        public void TestGetDirection()
        {
            UserInputHandler.ClearAllInput();

            var input = new List <string> {
                "DOWN"
            };

            UserInputHandler.AddKeyboardInput(input);
            var direction = UserInputHandler.GetDirection();

            Assert.AreEqual(0, direction.X);
            Assert.AreEqual(1, direction.Y);
            input = new List <string> {
                "UP_LEFT"
            };

            UserInputHandler.AddKeyboardInput(input);
            direction = UserInputHandler.GetDirection();
            Assert.AreEqual(-1, direction.X);
            Assert.AreEqual(-1, direction.Y);

            input = new List <string> {
                "C", "RIGHT"
            };

            UserInputHandler.AddKeyboardInput(input);
            direction = UserInputHandler.GetDirection();
            Assert.AreEqual(1, direction.X);
            Assert.AreEqual(0, direction.Y);

            input = new List <string> {
                "SPACE"
            };

            UserInputHandler.AddKeyboardInput(input);
            direction = UserInputHandler.GetDirection();
            Assert.AreEqual(0, direction.X);
            Assert.AreEqual(0, direction.Y);

            input = new List <string> {
                "SPACE", "RIGHT"
            };

            UserInputHandler.AddKeyboardInput(input);
            direction = UserInputHandler.GetDirection("", false);
            Assert.AreEqual(1, direction.X);
            Assert.AreEqual(0, direction.Y);

            input = new List <string> {
                "ESCAPE"
            };

            UserInputHandler.AddKeyboardInput(input);
            Assert.IsNull(UserInputHandler.GetDirection());
        }