예제 #1
0
        public void TestRemovalMatches_ShouldAlterSomeCells()
        {
            var simpleBoardContentsAfterRemoval = new BlockColor[, ]
            {
                { BlockColor.Red, BlockColor.Empty, BlockColor.Green, BlockColor.Red },
                { BlockColor.Green, BlockColor.Empty, BlockColor.Blue, BlockColor.Green },
                { BlockColor.Blue, BlockColor.Empty, BlockColor.Green, BlockColor.Red },
                { BlockColor.Empty, BlockColor.Empty, BlockColor.Empty, BlockColor.Red }
            };


            var match3Game = new Match3Game(Simple, AllowedTypes);
            List <SpecialBlockActivation> blockActivation = new List <SpecialBlockActivation>();
            List <BlockRemoval>           removedBlocks2  = new List <BlockRemoval>();
            List <BlockAndPosition>       createdBlocks   = new List <BlockAndPosition>();

            match3Game.RemoveMatches(blockActivation, removedBlocks2, createdBlocks);

            for (int row = 0; row < match3Game.RowCount; row++)
            {
                for (int column = 0; column < match3Game.ColumnCount; column++)
                {
                    Assert.That(match3Game[row, column].color == simpleBoardContentsAfterRemoval[row, column]);
                }
            }
        }
예제 #2
0
        public void TestRemovalMatches_ShouldNotAlterBoard()
        {
            var match3Game = new Match3Game(NoPossibleActions, AllowedTypes);
            List <SpecialBlockActivation> blockActivation = new List <SpecialBlockActivation>();
            List <BlockRemoval>           removedBlocks2  = new List <BlockRemoval>();
            List <BlockAndPosition>       createdBlocks   = new List <BlockAndPosition>();

            match3Game.RemoveMatches(blockActivation, removedBlocks2, createdBlocks);

            for (int row = 0; row < match3Game.RowCount; row++)
            {
                for (int column = 0; column < match3Game.ColumnCount; column++)
                {
                    Assert.That(match3Game[row, column].color != BlockColor.Empty);
                }
            }
        }