public void Environment_CoordinatesWithVariousDimensionsCount_ReturnUniqueCoordinates(int[] coordinateValues)
        {
            coordinateMock.Setup(coordinate => coordinate.CoordinatesValues).Returns(coordinateValues);
            var coordinateEnvironment = new CardinalCoordinateAroundRadar(coordinateMock.Object);

            var environment = coordinateEnvironment.Environment.ToArray();

            Assert.IsTrue(environment.Select(CreateCoordinateMock).Distinct().Count() == environment.Count());
        }
        public int Environment_CoordinatesWithVariousDimensionsNumber_ReturnValidNumberOfNeighbours(int[] coordinateValues)
        {
            coordinateMock.Setup(coordinate => coordinate.CoordinatesValues).Returns(coordinateValues);
            var coordinateEnvironment = new CardinalCoordinateAroundRadar(coordinateMock.Object);

            var environment = coordinateEnvironment.Environment;

            return(environment.Count());
        }
        public void Environment_CoordinatesWithVariousDimensionsNumber_ReturnNeighboursWithoutSelf(int[] coordinateValues)
        {
            coordinateMock.Setup(coordinate => coordinate.CoordinatesValues).Returns(coordinateValues);
            var coordinateEnvironment = new CardinalCoordinateAroundRadar(coordinateMock.Object);

            var  environment = coordinateEnvironment.Environment;
            bool hasSelf     = environment.Any(values => values.SequenceEqual(coordinateValues));

            Assert.IsFalse(hasSelf);
        }