Exemplo n.º 1
0
        public void GivenDirectionNorth_WhenMove_ShouldYAxisIncremented()
        {
            var direction   = new North();
            var oldPosition = new Core.ValueObject.RoverPosition(3, 3, direction.Direction);
            var position    = direction.Move(oldPosition);

            Assert.Equal(position.X, oldPosition.X);
            Assert.Equal(position.Y, oldPosition.Y + 1);
        }
Exemplo n.º 2
0
        public void moves_north()
        {
            var command = new North(11);

            var result = command.Move(StartingPosition);

            result.North.Should().Be(12);
            result.East.Should().Be(1);
            result.Direction.Should().Be(Direction.E);
        }
Exemplo n.º 3
0
        public void When_Moving_North_At_Y_Boundary_Do_Not_Pass_Boundary()
        {
            var direction = new North(_landscape);

            for (var i = 0; i < 10; i++)
            {
                direction.Move();
            }

            Assert.That(_landscape.CoordinateX, Is.EqualTo(0));
            Assert.That(_landscape.CoordinateY, Is.EqualTo(5));
        }
Exemplo n.º 4
0
        public void Move_HeadedNorth_ResultsInHigherPosition()
        {
            const int startX = 10;
            const int startY = 12;

            Direction sut = new North();

            var moveResult = sut.Move(startX, startY);

            moveResult.x.Should().Be(startX);
            moveResult.y.Should().Be(startY + 1);
        }