Esempio n. 1
0
 public DominoPiece(DominoTile firstTile, DominoTile secondTile)
 {
     Id = Guid.NewGuid().ToString();
     FirstTile = firstTile;
     SecondTile = secondTile;
     Orientation = DominoOrientation.UppDown;
 }
Esempio n. 2
0
        public void CreateWithNoNoise_AddsOnlyRequiredDominoPieces()
        {
            var beginCategory = new DominoTile("Begin", "");
            var endCategory = new DominoTile("End", "");
            var middleCategory = new DominoTile("Middle", "");

            A.CallTo(() => _pathFinder.FindPath(1, 1)).WithAnyArguments().Returns(new SuggestedPath { MinimumRequiredPieces = 2 });
            A.CallTo(() => _categoriesProvider.DrawTile()).ReturnsNextFromSequence(beginCategory, endCategory, middleCategory);
            A.CallTo(() => _categoriesProvider.DrawTileFromCategory("Begin")).Returns(beginCategory);
            A.CallTo(() => _categoriesProvider.DrawTileFromCategory("End")).Returns(endCategory);
            A.CallTo(() => _categoriesProvider.DrawTileFromCategory("Middle")).Returns(middleCategory);

            var builder = new GameBuilder(_pathFinder);

            var game = builder.Create(10, 10, 0, _categoriesProvider);

            Assert.Equal(2, game.PlayerPieces.Length);

            var firstPiece = game.PlayerPieces[0];
            Assert.Equal(beginCategory.Category, firstPiece.FirstTile.Category);
            Assert.Equal(middleCategory.Category, firstPiece.SecondTile.Category);

            var secondPiece = game.PlayerPieces[1];
            Assert.Equal(middleCategory.Category, secondPiece.FirstTile.Category);
            Assert.Equal(endCategory.Category, secondPiece.SecondTile.Category);
        }