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() ); }
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")); }
public void UniversalOrbitMap_MinimalTransfersCount_Works() { var orbits = UniversalOrbitMap.Parse(testOrbits2); Assert.Equal(4, orbits.MinimalTransfersCount()); }
public void UniversalOrbitMap_Checksum_Works() { var orbits = UniversalOrbitMap.Parse(testOrbits); Assert.Equal(42, orbits.Checksum()); }