コード例 #1
0
        public void SouthCardinalPointGetTurnedRightCardinalPoint_WhenFunctionCalled_ShouldTypeWestCardinalPoint()
        {
            //act
            ICardinalPoint newCardinalPoint = _southCardinalPoint.GetTurnedRightCardinalPoint();

            //assert
            Assert.AreEqual(typeof(WestCardinalPoint), newCardinalPoint.GetType());
        }
コード例 #2
0
        public void GetCardinalPoint_WhenCharIsW_ShouldWestCardinalPointType()
        {
            //act
            ICardinalPoint cardinalPoint = _factory.GetCardinalPoint('W');

            //assert
            Assert.AreEqual(typeof(WestCardinalPoint), cardinalPoint.GetType());
        }
コード例 #3
0
        public void EastCardinalPointGetTurnedLeftCardinalPoint_WhenFunctionCalled_ShouldTypeNorthCardinalPoint()
        {
            //act
            ICardinalPoint newCardinalPoint = _eastCardinalPoint.GetTurnedLeftCardinalPoint();

            //assert
            Assert.AreEqual(typeof(NorthCardinalPoint), newCardinalPoint.GetType());
        }
コード例 #4
0
        public void GetCardinalPoint_WhenCharIsN_ShouldSouthCardinalPointType()
        {
            //act
            ICardinalPoint cardinalPoint = _factory.GetCardinalPoint('S');

            //assert
            Assert.AreEqual(typeof(SouthCardinalPoint), cardinalPoint.GetType());
        }
コード例 #5
0
        private static MarsMap GetMap(int roverX, int roverY, ICardinalPoint cardinalPoint, List <DirectionType> directionTypes)
        {
            RoboticRover rover      = new RoboticRover(new MarsPoint(roverX, roverY), cardinalPoint);
            var          directions = directionTypes;

            rover.MovePattern = new MovePattern(directions);
            MarsMap map = new MarsMap(new MarsPoint(5, 5));

            map.Rovers = new List <RoverBase>()
            {
                rover
            };
            return(map);
        }
コード例 #6
0
ファイル: InputReader.cs プロジェクト: kaanyilgin/Mars-Rover
        public RoverBase GetRover()
        {
            string initialPosition = _consoleReader.ReadLine();

            if (initialPosition == string.Empty || initialPosition.Length != 5 || initialPosition[1] != ' ' ||
                initialPosition[3] != ' ')
            {
                throw new InputFormatException("String empty");
            }

            var            coordinateString  = GetCoordinatesFromRoversInitialPoint(initialPosition);
            Point          point             = GetMarsPoint(coordinateString);
            var            cardinalPointChar = initialPosition[4];
            ICardinalPoint cardinalPoint     = _cardinalPointFactory.GetCardinalPoint(cardinalPointChar);

            return(new RoboticRover(point, cardinalPoint));
        }
コード例 #7
0
ファイル: RoverBase.cs プロジェクト: kaanyilgin/Mars-Rover
 public RoverBase(Point point, ICardinalPoint cardinalPoint)
 {
     _point         = point ?? throw new ArgumentNullException(nameof(point));
     _cardinalPoint = cardinalPoint ?? throw new ArgumentNullException(nameof(cardinalPoint));
 }
コード例 #8
0
 public void SetUp()
 {
     _point         = Substitute.For <Point>();
     _cardinalPoint = Substitute.For <ICardinalPoint>();
     _rover         = new RoboticRover(_point, _cardinalPoint);
 }
コード例 #9
0
ファイル: RoboticRover.cs プロジェクト: kaanyilgin/Mars-Rover
 public RoboticRover(Point point, ICardinalPoint cardinalPoint) : base(point, cardinalPoint)
 {
 }
コード例 #10
0
 public RoverStub(Point point, ICardinalPoint cardinalPoint) : base(point, cardinalPoint)
 {
 }