public void LoadTest() { var txt = @" A,ABCD,NAME1,1.0,2.0,100,18000,18000,3000,0 R,09,95,3000,150,0,0.0,0,1.0,2.0,100,3.00,50,1,0 R,27,275,3000,150,0,0.0,0,1.0,2.0,100,3.00,50,1,0 A,EFGH,NAME2,1.0,2.0,100,3000,5000,2500,0 R,36,003,2500,100,0,0.0,0,1.0,2.0,100,3.00,50,1,0 R,18,183,2500,100,0,0.0,0,1.0,2.0,100,3.00,50,1,0 "; var result = AirportDataLoader.Load(txt.Lines()); var err = result.Errors; var airports = result.Airports; Assert.IsEmpty(err); Assert.AreEqual(2, airports.Count); var ap1 = airports["ABCD"]; var rwy09 = new RwyData("09", "95", 3000, 150, true, false, "0.0", "0", 1.0, 2.0, 100, 3.0, 50, AirportDataLoader.SurfTypes[1], 0); var rwy27 = new RwyData("27", "275", 3000, 150, true, false, "0.0", "0", 1.0, 2.0, 100, 3.0, 50, AirportDataLoader.SurfTypes[1], 0); var expected1 = new Airport("ABCD", "NAME1", 1.0, 2.0, 100, true, 18000, 18000, 3000, new[] { rwy09, rwy27 }); Assert.IsTrue(expected1.Equals(ap1)); var ap2 = airports["EFGH"]; Assert.AreEqual("NAME2", ap2.Name); Assert.IsTrue(ap2.Rwys.Select(r => r.RwyIdent).SetEquals("18", "36")); }
public void LoadFromFileTest() { var directory = AppDomain.CurrentDomain.BaseDirectory; var loader = new AirportDataLoader(directory + @"\NavData\OpenData"); var airports = loader.LoadFromFile(); // Airport parameter incomplete - should not load. Assert.IsNull(airports["37NJ"]); var vhhh = airports["VHHH"]; AssertVhhh(vhhh); AssertVhhhRwys(vhhh); }
public void LoadErrorTest() { var txt = @" A,ABCD,NAME1,1.0,2.0,100,18000,18000,3000,0 R,09,95,#,150,0,0.0,0,1.0,2.0,100,3.00,50,1,0 R,27,275,3000,150,0,0.0,0,1.0,2.0,100,3.00,50,1,0 "; var result = AirportDataLoader.Load(txt.Lines()); var err = result.Errors; var airports = result.Airports; Assert.AreEqual(1, err.Count); Assert.AreEqual(1, airports.Count); Assert.AreEqual(1, airports["ABCD"].Rwys.Count); }
/// <exception cref="Exception"></exception> private void InitAirportAndWaypoints() { string navDataPath = AppSettings.NavDataLocation; var airportTxtPath = Path.Combine(navDataPath, "Airports.txt"); var airportResult = AirportDataLoader.LoadFromFile(airportTxtPath); var err = airportResult.Errors; if (err.Any()) { Log(ReadFileErrorMsg.ErrorMsg(err, "ats.txt")); } var airports = airportResult.Airports; var result = new WptListLoader(navDataPath).LoadFromFile(); countryCodesLocator = result.CountryCodes.ToLocator(); airwayNetwork = new AirwayNetwork(result.WptList, airports); }
// If failed, returns null. private AirportManager TryLoadAirports() { try { var directory = pathTxtBox.Text; var filePath = Path.Combine(directory, "Airports.txt"); var loadResult = AirportDataLoader.LoadFromFile(filePath); var err = loadResult.Errors; if (err.Any()) { Log(ReadFileErrorMsg.ErrorMsg(err, "ats.txt")); } return(loadResult.Airports); } catch (Exception ex) { Log(ex); this.ShowError("Failed to load airports.txt."); return(null); } }