Esempio n. 1
0
        public void TestRoverPositionEquality()
        {
            var position1 = new RoverPosition(new Point(1, 1), MarsRover.CardinalDirection.East);
            var position2 = new RoverPosition(new Point(1, 1), MarsRover.CardinalDirection.East);

            Assert.IsTrue(position1.GetHashCode().Equals(position2.GetHashCode()));
            Assert.IsTrue(position1.Equals(position2));
        }
Esempio n. 2
0
        public override bool Equals(object obj)
        {
            var other = obj as Rover;

            if (other == null)
            {
                return(false);
            }

            if (RoverFacing != other.RoverFacing || Commands.OrderBy(kvp => kvp.Key)
                .SequenceEqual(other.Commands.OrderBy(kvp => kvp.Key)) || !RoverPosition.Equals(other.RoverPosition))
            {
                return(false);
            }

            return(true);
        }