示例#1
0
        public void GameMineSweeperRulesTestOutOfLives()
        {
            var mplayerMock = new Mock <IPlayer>();

            mplayerMock.SetupGet(x => x.NoOfLives).Returns(0);


            var mboardResults = new Mock <BoardResults>();


            var testResults = new GameMineSweeperRules().ApplyGameRules(mboardResults.Object, mplayerMock.Object);

            Assert.AreEqual(true, testResults.GameOver);
            Assert.AreEqual("Dead ", testResults.resultPosition);
            Assert.AreEqual("Out of Lives Ouch", testResults.resultMessage);
        }
示例#2
0
        public void GameMineSweeperRulesTestMadeItOutSafely()
        {
            var mplayerMock = new Mock <IPlayer>();

            mplayerMock.SetupGet(x => x.NoOfLives).Returns(3);

            var mboardResults = new Mock <BoardResults>();

            mboardResults.SetupGet(x => x.ReachedTheEnd).Returns(true);

            var testResults = new GameMineSweeperRules().ApplyGameRules(mboardResults.Object, mplayerMock.Object);


            Assert.AreEqual(true, testResults.GameOver);
            Assert.AreEqual("Free ", testResults.resultPosition);
            Assert.AreEqual("You have made it safely out", testResults.resultMessage);
        }
示例#3
0
        public void GameMineSweeperRulesTestInValidMoveResetPosition()
        {
            var mplayerMock = new Mock <IPlayer>();

            mplayerMock.SetupGet(x => x.NoOfLives).Returns(3);
            mplayerMock.Setup(x => x.FriendlyPosition()).Returns("A4");

            var mboardResults = new Mock <BoardResults>();

            mboardResults.SetupGet(x => x.ReachedTheEnd).Returns(false);
            mboardResults.SetupGet(x => x.ValidMove).Returns(false);

            var testResults = new GameMineSweeperRules().ApplyGameRules(mboardResults.Object, mplayerMock.Object);

            mplayerMock.Verify(x => x.ResetPosition());
            Assert.AreEqual(false, testResults.GameOver);
            Assert.AreEqual("Position A4", testResults.resultPosition);
        }