Exemplo n.º 1
0
        public void Given_ARightRotatedTile_When_GettingRightEdge_Then_ReturnsBottomEdge()
        {
            // Arrange
            var field = new Field(ImmutableHashSet.Create(
                                      Segment.RightTop,
                                      Segment.Right,
                                      Segment.RightBottom
                                      ));

            var tile = new TileBuilder()
                       .CreateTile(new IFeature[]
            {
                field,
            })
                       .ValueOrFailure();

            var placement = new TilePlacement(tile, Rotation.Quarter);

            // Act
            var actualEdge = placement.GetFeaturesAt(Edge.Bottom);

            // Assert
            IFeature[] expectedEdge =
            {
                field, field, field
            };

            Assert.Equal(expectedEdge, actualEdge);
        }
Exemplo n.º 2
0
        public void Given_AnUnrotatedTile_When_GettingTopEdge_Then_ReturnsTopEdge()
        {
            // Arrange
            var field = new Field(ImmutableHashSet.Create(
                                      Segment.TopLeft,
                                      Segment.Top,
                                      Segment.TopRight
                                      ));

            var tile = new TileBuilder()
                       .CreateTile(new IFeature[]
            {
                field,
            })
                       .ValueOrFailure();

            var placement = new TilePlacement(tile, Rotation.None);

            // Act
            var actualEdge = placement.GetFeaturesAt(Edge.Top);

            // Assert
            IFeature[] expectedEdge =
            {
                field, field, field
            };

            Assert.Equal(expectedEdge, actualEdge);
        }