Beispiel #1
0
        public void UniversalOrbitMap_AllPlanetsOf_Works()
        {
            var orbits          = UniversalOrbitMap.Parse(testOrbits);
            var allPlanetsQuery =
                from planet in orbits.AllPlanetsOf("L") select planet;

            Assert.Equal(
                new string[] { "K", "J", "E", "D", "C", "B", "COM" },
                allPlanetsQuery.ToArray()
                );
        }
Beispiel #2
0
        public void UniversalOrbitMap_Parse_Works()
        {
            var orbits = UniversalOrbitMap.Parse(testOrbits);

            Assert.Equal("COM", orbits.PlanetOf("B"));
            Assert.Equal("E", orbits.PlanetOf("J"));
            Assert.Equal("E", orbits.PlanetOf("F"));
            Assert.Equal(new HashSet <string> {
                "E", "I"
            }, orbits.MoonsOf("D"));
        }
Beispiel #3
0
        public void UniversalOrbitMap_MinimalTransfersCount_Works()
        {
            var orbits = UniversalOrbitMap.Parse(testOrbits2);

            Assert.Equal(4, orbits.MinimalTransfersCount());
        }
Beispiel #4
0
        public void UniversalOrbitMap_Checksum_Works()
        {
            var orbits = UniversalOrbitMap.Parse(testOrbits);

            Assert.Equal(42, orbits.Checksum());
        }