예제 #1
0
        public void P9_TestGameBoardAddMarbleFull()
        {
            var board   = new GameBoard();
            var removed = 0L;

            for (var i = 1; i <= 22; i++)
            {
                removed += board.AddMarble(i);
            }
            Assert.AreEqual(0, removed);
            Assert.AreEqual(22, board.GetCurrentMarble);
            Assert.AreEqual("0 16 8 17 4 18 9 19 2 20 10 21 5 22 11 1 12 6 13 3 14 7 15", board.ToString());

            board.Clear();
            for (var i = 1; i <= 23; i++)
            {
                removed += board.AddMarble(i);
            }
            Assert.AreEqual(32, removed);
            Assert.AreEqual(19, board.GetCurrentMarble);
            Assert.AreEqual("0 16 8 17 4 18 19 2 20 10 21 5 22 11 1 12 6 13 3 14 7 15", board.ToString());

            removed = 0;
            board.Clear();
            for (var i = 1; i <= 25; i++)
            {
                removed += board.AddMarble(i);
            }

            Assert.AreEqual(32, removed);
            Assert.AreEqual(25, board.GetCurrentMarble);
            Assert.AreEqual("0 16 8 17 4 18 19 2 24 20 25 10 21 5 22 11 1 12 6 13 3 14 7 15", board.ToString());
        }