public void TestPieceGrid()
        {
            ChessBoard cb = new ChessBoard ();
            Bishop cpb = new Bishop (cb [4, 4], "B");
            King cpk = new King (cb [3, 3], "W");

            cpk.MovePiece(cb[3, 4], cb);
            cpk.MovePiece(cb[6, 6], cb);

            Assert.AreEqual (cb[4, 4], cpb.Grid);
            Assert.AreEqual (cb[3, 4], cpk.Grid);
        }
        public void TestKingMovement()
        {
            ChessBoard cb = new ChessBoard ();
            King kg = new King (cb [4, 4], "B");
            cb [4, 4].PlacePiece (kg);

            //Test invalid movement
            Assert.IsFalse(kg.CheckMovementRule(cb[6,7], cb));
            Assert.AreEqual(kg.MovePiece(cb[6, 7], cb), "Invalid move");
            Assert.AreSame (kg.Grid, cb [4, 4]);

            //Test valid movement
            Assert.IsTrue (kg.CheckMovementRule (cb [3, 5], cb));
            Assert.IsNull (kg.MovePiece (cb [3, 5], cb));
            Assert.AreSame (kg.Grid, cb [3, 5]);
        }