Пример #1
0
        public void CheckUndoWallTest()
        {
            GameNS.Game game = new Game(null);
            game.Load(wallleveltest);
            game.MakeMap();
            game.Move(Direction.Down);
            game.Move(Direction.Up);

            MapItem expectedPlayerPosition = game.Map.Items[17];

            FilerNS.Parts ExpectedEmpty = FilerNS.Parts.Empty;
            FilerNS.Parts ExpectedWall  = FilerNS.Parts.Wall;

            game.Undo();

            MapItem real = game.FindPlayer();

            FilerNS.Parts RealEmpty = game.WhatsAt(2, 2);
            FilerNS.Parts RealWall  = game.WhatsAt(1, 2);


            Assert.AreEqual(expectedPlayerPosition, real, "didnt undo correctly");
            Assert.AreEqual(ExpectedEmpty, RealEmpty, "Old Player Pos didnt update to Empty");
            Assert.AreEqual(ExpectedWall, RealWall, "Goal moved");
        }
Пример #2
0
        public void WhatsAtReturnsEmpty() // if foreign character found return empty
        {
            GameNS.Game game = new Game(null);
            game.Load(WhatsAtEmptyTest);
            game.MakeMap();
            FilerNS.Parts expected = FilerNS.Parts.Empty;

            FilerNS.Parts real = game.WhatsAt(0, 2);


            Assert.AreEqual(expected, real, "Wrong Part found");
        }
Пример #3
0
        public void WhatsAtWorks() // to see if the function works
        {
            GameNS.Game game = new Game(null);
            game.Load(leveltext);
            game.MakeMap();
            FilerNS.Parts expected = FilerNS.Parts.Wall;

            FilerNS.Parts real = game.WhatsAt(0, 2);


            Assert.AreEqual(expected, real, "Wrong Part found");
        }
Пример #4
0
        public void MoveBoxOffGoal() // to move box off goal and up if above player
        {
            GameNS.Game game = new Game(null);
            game.Load(boxoffgoalleveltest);
            game.MakeMap();
            game.Move(Direction.Up);
            FilerNS.Parts expectedBoxType        = FilerNS.Parts.Block; //new location of BoxOnGoal
            MapItem       expectedPlayerPosition = game.Map.Items[12];  //new location of Player

            FilerNS.Parts realBoxCheck = game.WhatsAt(1, 2);
            MapItem       realPlayer   = game.FindPlayer();

            Assert.AreEqual(expectedBoxType, realBoxCheck, "BoxOnGoal didnt update correctly");
            Assert.AreEqual(expectedPlayerPosition, realPlayer, "Player Didnt Update");
        }
Пример #5
0
        public void MoveBox() // to move box if beside player up
        {
            GameNS.Game game = new Game(null);
            game.Load(boxleveltest);
            game.MakeMap();
            game.Move(Direction.Up);
            FilerNS.Parts expectedBoxType        = FilerNS.Parts.Block; //new location of Box
            MapItem       expectedPlayerPosition = game.Map.Items[7];   //new location of Player

            FilerNS.Parts realBoxCheck = game.WhatsAt(0, 2);
            MapItem       realPlayer   = game.FindPlayer();

            Assert.AreEqual(expectedBoxType, realBoxCheck, "Box didnt update correctly");
            Assert.AreEqual(expectedPlayerPosition, realPlayer, "Player Didnt Update");
        }
Пример #6
0
        public void CantMovePlayer() // if a wall or something in box way / cant move
        {
            GameNS.Game game = new Game(null);
            game.Load(wallleveltest);
            game.MakeMap();
            game.Move(Direction.Up);
            FilerNS.Parts expectedWallType       = FilerNS.Parts.Wall; //unchanged location of Wall!
            MapItem       expectedPlayerPosition = game.Map.Items[12]; //new / unchanged location of Player

            FilerNS.Parts wallCheck  = game.WhatsAt(1, 2);
            MapItem       realPlayer = game.FindPlayer();

            Assert.AreEqual(wallCheck, expectedWallType, "The Wall has changed");
            Assert.AreEqual(expectedPlayerPosition, realPlayer, "Player Updated when it shouldnt");
        }
Пример #7
0
        public void MovePlayerOffGoal() // to move player off Goal and update that floor to goal (and
                                        //player from + to @)
        {
            GameNS.Game game = new Game(null);
            game.Load(playermoveoffgoalleveltest);
            game.MakeMap();
            game.Move(Direction.Up);
            MapItem expectedPlayerPosition = game.Map.Items[7]; //new location of Player Off Goal

            FilerNS.Parts expectedPlayerSign = FilerNS.Parts.Player;


            MapItem real = game.FindPlayer();

            FilerNS.Parts realPlayerSign = game.WhatsAt(1, 2);

            Assert.AreEqual(expectedPlayerPosition, real, "Player didnt move off Goal and update");
            Assert.AreEqual(expectedPlayerSign, realPlayerSign, "Sign didnt Update");
        }
Пример #8
0
        public void CheckUndoWorksBoxRound2()  // sometimes player has moved beside a box, but hasnt moved it. This will test if the player will not move that box back when undo is pressed
        {
            GameNS.Game game = new Game(null);
            game.Load(undoBoxR2);
            game.MakeMap();
            game.Move(Direction.Up); //player now beside box

            game.Undo();
            MapItem expectedPlayerPosition = game.Map.Items[17];

            FilerNS.Parts ExpectedBox = FilerNS.Parts.Block;
            MapItem       real        = game.FindPlayer();

            FilerNS.Parts RealBox = game.WhatsAt(1, 2);


            Assert.AreEqual(expectedPlayerPosition, real, "didnt undo correctly");
            Assert.AreEqual(ExpectedBox, RealBox, "Box moved");
        }
Пример #9
0
        public void CantMovePlayerOutOfBounds() // if no wall box cant fall off map boundry
        {
            GameNS.Game game = new Game(null);
            game.Load(boundsleveltest);
            game.MakeMap();
            game.Move(Direction.Up);
            game.Move(Direction.Up);
            game.Move(Direction.Up);
            MapItem expectedPlayerPosition = game.Map.Items[2]; //new location of Player Off Goal

            FilerNS.Parts expectedPlayerSign = FilerNS.Parts.Player;


            MapItem real = game.FindPlayer();

            FilerNS.Parts realPlayerSign = game.WhatsAt(0, 2);

            Assert.AreEqual(expectedPlayerPosition, real, "Player didnt move correctly");
            Assert.AreEqual(expectedPlayerSign, realPlayerSign, "Sign didnt Update");
        }
Пример #10
0
        public void CheckUndoWorksWithBoxAndPlayerOnGoal()
        {
            GameNS.Game game = new Game(null);
            game.Load(undoPlayerOnGoalleveltest);
            game.MakeMap();
            game.Move(Direction.Up); //player now on goal box off goal


            game.Undo();
            MapItem expectedPlayerPosition = game.Map.Items[17];

            FilerNS.Parts ExpectedBox = FilerNS.Parts.BlockOnGoal;
            MapItem       real        = game.FindPlayer();

            FilerNS.Parts RealBox = game.WhatsAt(2, 2);


            Assert.AreEqual(expectedPlayerPosition, real, "didnt undo correctly");
            Assert.AreEqual(ExpectedBox, RealBox, "Box didnt move");
        }
Пример #11
0
        public void CheckUndoWorksWithPlayerOntoGoal() //test what happens when player moves back onto goal
        {
            GameNS.Game game = new Game(null);
            game.Load(playermoveoffgoalleveltest);
            game.MakeMap();
            game.Move(Direction.Up);//creating move lis
            MapItem expectedPlayerPosition = game.Map.Items[12];

            FilerNS.Parts ExpectedType  = FilerNS.Parts.PlayerOnGoal;
            FilerNS.Parts ExpectedEmpty = FilerNS.Parts.Empty;

            game.Undo();

            MapItem real = game.FindPlayer();

            FilerNS.Parts RealEmpty = game.WhatsAt(1, 2);
            FilerNS.Parts RealType  = game.WhatsAt(real.CordX, real.CordY);

            Assert.AreEqual(expectedPlayerPosition, real, "didnt undo correctly.");
            Assert.AreEqual(ExpectedEmpty, RealEmpty, "Old Player Pos didnt update to Empty");
            Assert.AreEqual(ExpectedType, RealType, "Didnt  Update Type");
        }
Пример #12
0
        public void CheckUndoWorksWithPlayerAndGoal() //need to find previous move, then move player in opposite direction
        {
            GameNS.Game game = new Game(null);
            game.Load(undoGoalTest);
            game.MakeMap();
            game.Move(Direction.Up); //creating move list
            MapItem expectedPlayerPosition = game.Map.Items[17];

            FilerNS.Parts ExpectedEmpty = FilerNS.Parts.Empty;
            FilerNS.Parts ExpectedGoal  = FilerNS.Parts.Goal;

            game.Undo();

            MapItem real = game.FindPlayer();

            FilerNS.Parts RealEmpty = game.WhatsAt(2, 2);
            FilerNS.Parts RealGoal  = game.WhatsAt(1, 2);


            Assert.AreEqual(expectedPlayerPosition, real, "didnt undo correctly");
            Assert.AreEqual(ExpectedEmpty, RealEmpty, "Old Player Pos didnt update to Empty");
            Assert.AreEqual(ExpectedGoal, RealGoal, "Goal moved");
        }
Пример #13
0
        public void CheckUndoWorksWithBoxOnGoalAndPlayerOnGoal()
        {
            //should output normal player, boxOnGoal and goal
            GameNS.Game game = new Game(null);
            game.Load(undoBoxGoalPlayerGoalLevelTest);
            game.MakeMap();
            game.Move(Direction.Up); //creating move lis


            game.Undo();
            MapItem expectedPlayerPosition = game.Map.Items[17];

            FilerNS.Parts ExpectedBox  = FilerNS.Parts.BlockOnGoal;
            FilerNS.Parts ExpectedGoal = FilerNS.Parts.Goal;
            MapItem       real         = game.FindPlayer();

            FilerNS.Parts RealBox  = game.WhatsAt(2, 2);
            FilerNS.Parts RealGoal = game.WhatsAt(1, 2);


            Assert.AreEqual(expectedPlayerPosition, real, "didnt undo correctly");
            Assert.AreEqual(ExpectedBox, RealBox, "Box didnt move");
            Assert.AreEqual(ExpectedGoal, RealGoal, "Box on Goal didnt update to Goal");
        }