Пример #1
0
        public void TestShootTarget_MissTwice()
        {
            GridManager gridManager = new GridManager(ships);

            string input = gridManager.GetMatchingInput(0, 0);

            ShotResult shotResult = gridManager.ShootTarget(input);
            shotResult = gridManager.ShootTarget(input);

            Assert.AreEqual(ShotResult.Miss, shotResult);
        }
Пример #2
0
        public void TestShootTarget_AllShipsSunk()
        {
            GridManager gridManager = new GridManager(ships);
            ShotResult shotResult = ShotResult.Error;

            foreach (Ship ship in ships)
            {
                int deltaRow = ship.Direction == ShipDirection.Horizontal ? 0 : 1;
                int deltaCol = ship.Direction == ShipDirection.Horizontal ? 1 : 0;

                for (int i = 0; i < ship.Size; i++)
                {
                    int row = ship.Bow.Row + (i * deltaRow);
                    int col = ship.Bow.Col + (i * deltaCol);

                    string input = gridManager.GetMatchingInput(row, col);

                    shotResult = gridManager.ShootTarget(input);
                }
            }

            Assert.AreEqual(ShotResult.AllShipsSunk, shotResult);
        }
Пример #3
0
        public void TestShootTarget_HitTwice()
        {
            GridManager gridManager = new GridManager(ships);

            string input = gridManager.GetMatchingInput(ships[0].Bow.Row, ships[0].Bow.Col);

            ShotResult shotResult = gridManager.ShootTarget(input);
            shotResult = gridManager.ShootTarget(input);

            Assert.AreEqual(ShotResult.Hit, shotResult);
        }