public void MoveOnSouthHeadingFromPositiveYAxisShouldReturnPositiveYAxis()
        {
            var heading = Heading.South;
            var start   = new Point(2, 2);

            var result = PositionCalculator.Move(heading, start);

            Assert.AreEqual(new Point(2, 1), result);
        }
        public void MoveOnNorthHeadingFromNegativeYAxisShouldReturnZeroYAxis()
        {
            var heading = Heading.North;
            var start   = new Point(2, -1);

            var result = PositionCalculator.Move(heading, start);

            Assert.AreEqual(new Point(2, 0), result);
        }
        public void MoveOnEastHeadingFromZeroXAxisShouldReturnPositiveXAxis()
        {
            var heading = Heading.East;
            var start   = new Point(0, 2);

            var result = PositionCalculator.Move(heading, start);

            Assert.AreEqual(new Point(1, 2), result);
        }
        public void MoveOnWestHeadingFromNegativeXAxisShouldReturnNegativeXAxis()
        {
            var heading = Heading.West;
            var start   = new Point(-2, 2);

            var result = PositionCalculator.Move(heading, start);

            Assert.AreEqual(new Point(-3, 2), result);
        }