Ejemplo n.º 1
0
        public void TestKnightInvalidMovement()
        {
            ChessBoard cb = new ChessBoard ();
            Knight kn = new Knight (cb [4, 4], "B");
            cb [4, 4].PlacePiece (kn);

            Assert.IsFalse(kn.CheckMovementRule(cb[3,3], cb));
            Assert.IsFalse(kn.CheckMovementRule(cb[7,7], cb));
            Assert.IsFalse(kn.CheckMovementRule(cb[4, 3], cb));

            Assert.AreEqual (kn.MovePiece (cb [4, 3], cb), "Invalid move");
            Assert.AreNotSame (kn.Grid, cb [4, 3]);
            Assert.AreSame (kn.Grid, cb [4, 4]);
        }
Ejemplo n.º 2
0
        public void TestKnightMovementOnEmpty()
        {
            ChessBoard cb = new ChessBoard ();
            Knight kn = new Knight (cb [4, 4], "B");
            cb [4, 4].PlacePiece (kn);

            Assert.IsTrue(kn.CheckMovementRule(cb[6, 5], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[5, 6], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[3, 2], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[2, 3], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[3, 6], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[6, 3], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[2, 5], cb));
            Assert.IsTrue(kn.CheckMovementRule(cb[5, 2], cb));

            Assert.IsNull (kn.MovePiece (cb [5, 2], cb));
            Assert.AreEqual (kn.Grid, cb [5, 2]);
        }