public void TestFindNeighbours() { var cities = new Cities(); cities.ReadCities(citiesTestFile); var loc = cities[0].Location; IEnumerable <City> neighbors = cities.FindNeighbours(loc, 2000); //verifies if the correct cities were found Assert.AreEqual(4, neighbors.Count()); Assert.IsTrue(neighbors.Any(c => c.Name == "Mumbai")); Assert.IsTrue(neighbors.Any(c => c.Name == "Karachi")); Assert.IsTrue(neighbors.Any(c => c.Name == "Dhaka")); Assert.IsTrue(neighbors.Any(c => c.Name == "Dilli")); }
public void TestFindNeighbours() { var cities = new Cities(); cities.ReadCities(CitiesTestFile); var loc = cities[0].Location; var neighbors = cities.FindNeighbours(loc, 2000); Assert.AreEqual(4, neighbors.Count); //verifies if the correct cities were found Assert.IsNotNull(neighbors.First(c => c.Name == "Mumbai")); Assert.IsNotNull(neighbors.First(c => c.Name == "Karachi")); Assert.IsNotNull(neighbors.First(c => c.Name == "Dhaka")); Assert.IsNotNull(neighbors.First(c => c.Name == "Dilli")); }
public void TestFindNeighboursSorted() { var cities = new Cities(); cities.ReadCities(citiesTestFile); var loc = cities[0].Location; var neighbors = cities.FindNeighbours(loc, 2000).ToArray(); //verify the correct order (sorted by distance) Assert.AreEqual(4, neighbors.Length); Assert.AreEqual("Mumbai", neighbors[0].Name); Assert.AreEqual("Karachi", neighbors[1].Name); Assert.IsTrue(loc.Distance(neighbors[0].Location) <= loc.Distance(neighbors[1].Location)); Assert.AreEqual("Dilli", neighbors[2].Name); Assert.IsTrue(loc.Distance(neighbors[1].Location) <= loc.Distance(neighbors[2].Location)); Assert.AreEqual("Dhaka", neighbors[3].Name); Assert.IsTrue(loc.Distance(neighbors[2].Location) <= loc.Distance(neighbors[3].Location)); }
static void Main(string[] args) { Version version = Assembly.GetEntryAssembly().GetName().Version; Console.WriteLine("Welcome to RoutePlanner ({0})", version); WayPoint wayPoint = new WayPoint("Windisch", 47.479319847061966, 8.212966918945312); Console.WriteLine(wayPoint.ToString()); WayPoint wpBern = new WayPoint("Bern", 46.9472221, 7.451202500000022); WayPoint wpTripolis = new WayPoint("Tripolis", 59.86062519999999, 17.650885199999948); Console.WriteLine("Distanz Bern-Tripolis: {0}km", wpBern.Distance(wpTripolis)); City cBern = new City("Bern", "Schweiz", 75000, 47.479319847061966, 8.212966918945312); City c0 = new City("Mumbai", "India", 12383146, 18.96, 72.82); string serializedCity = string.Empty; using (StringWriter outstream = new StringWriter()) { SimpleObjectWriter writer = new SimpleObjectWriter(outstream); writer.Next(cBern); serializedCity = outstream.ToString(); } Console.WriteLine(serializedCity); using (StringReader inStream = new StringReader(serializedCity)) { SimpleObjectReader reader = new SimpleObjectReader(inStream); object o = reader.Next(); } WayPoint wp = c0.Location; Cities c = new Cities(); c.ReadCities("citiesTestDataLab2.txt"); c.FindNeighbours(wp, 2000); c.ReadCities("citiesTestDataLab2.txt"); var routes = new RoutesDijkstra(c); var reqWatch = new RouteRequestWatcher(); routes.RouteRequestEvent += reqWatch.LogRouteRequests; routes.FindShortestRouteBetween("Mumbai", "India", TransportModes.Rail); routes.FindShortestRouteBetween("Mumbai", "India", TransportModes.Rail); routes.FindShortestRouteBetween("India", "Mumbai", TransportModes.Rail); Console.WriteLine("City found: {0}", c.FindCity("Mumbai").Name); c.ReadCities("citiesTestDataLab4.txt"); Routes r = new RoutesDijkstra(c); r.RouteRequestEvent += reqWatch.LogRouteRequests; r.ReadRoutes("linksTestDataLab4.txt"); List <Link> l = r.FindShortestRouteBetween("Zürich", "Winterthur", TransportModes.Rail); foreach (Link link in l) { Console.WriteLine("from {0} to {1} in {2}", link.FromCity.Name, link.ToCity.Name, link.Distance); } Console.ReadKey(); City zurich = c.FindCity("Zürich"); City winterthur = c.FindCity("Winterthur"); ExcelExchange export = new ExcelExchange(); export.WriteToFile("Test.xls", zurich, winterthur, l); }
static void Main(string[] args) { //Lab1 Aufgabe 1 Console.WriteLine("Welcome to RoutePlanner (Version " + Assembly.GetExecutingAssembly().GetName().Version + ")"); //Lab1 Aufgabe 2d var wayPoint = new WayPoint("Windisch", 47.479319847061966, 8.212966918945312); Console.WriteLine("{0}: {1}/{2}", wayPoint.Name, wayPoint.Latitude, wayPoint.Longitude); //Lab2 Aufgabe 1a Console.WriteLine(wayPoint); var wayPoint1 = new WayPoint("", 47.479319847061966, 8.212966918945312); var wayPoint2 = new WayPoint(null, 47.479319847061966, 8.212966918945312); Console.WriteLine(wayPoint1); Console.WriteLine(wayPoint2); //Lab2 Aufgabe 1b var bern = new WayPoint("Bern", 46.948342, 7.442935); var tripolis = new WayPoint("Tripolis", 32.808858, 13.098922); Console.WriteLine(bern.Distance(tripolis)); Console.WriteLine(tripolis.Distance(bern)); //Lab2 Aufgabe 2a new City("Bern", "Schweiz", 75000, 47.479319847061966, 8.212966918945312); //Lab2 Aufgabe 2b Cities cities = new Cities(); Console.WriteLine("New cities: " + cities.ReadCities("citiesTestDataLab2.txt")); //Lab2 Aufgabe 2c /* * for (int i = 0; i < cities.Count;i++ ) * { * Console.WriteLine(cities[i].Name + ", " + cities[i].Country + ", " + cities[i].Population + ", " + cities[i].Location.Latitude + ", " + cities[i].Location.Longitude + ); + } */ //Lab2 Aufgabe 2d List <City> neighbours = cities.FindNeighbours(cities[1].Location, (double)17000.0); for (int i = 0; i < neighbours.Count; i++) { Console.WriteLine(neighbours[i].Name + ", " + neighbours[i].Country + ", " + neighbours[i].Population + ", " + neighbours[i].Location.Latitude + ", " + neighbours[i].Location.Longitude ); } //Lab3 Aufgabe 1 City city = cities.FindCity("shanghai"); Console.WriteLine("Name: " + city.Name + ", " + city.Country + ", " + city.Population + ", " + city.Location.Latitude + ", " + city.Location.Longitude ); //Lab3 Aufgabe 2c var reqWatch = new RouteRequestWatcher(); var routeCities = new Cities(); cities.ReadCities("citiesTestDataLab2.txt"); var routes = new RoutesDijkstra(routeCities); routes.RouteRequestEvent += reqWatch.LogRouteRequests; routes.FindShortestRouteBetween("Bern", "Zürich", TransportModes.Rail); routes.FindShortestRouteBetween("Bern", "Zürich", TransportModes.Rail); routes.FindShortestRouteBetween("Basel", "Bern", TransportModes.Rail); const string cityString1 = "Instance of Fhnw.Ecnf.RoutePlanner.RoutePlannerLib.City\r\nName=\"Aarau\"\r\nCountry=\"Switzerland\"\r\nPopulation=10\r\nLocation is a nested object...\r\nInstance of Fhnw.Ecnf.RoutePlanner.RoutePlannerLib.WayPoint\r\nName=\"Aarau\"\r\nLongitude=2.2\r\nLatitude=1.1\r\nEnd of instance\r\nEnd of instance\r\n"; const string cityString2 = "Instance of Fhnw.Ecnf.RoutePlanner.RoutePlannerLib.City\r\nName=\"Bern\"\r\nCountry=\"Switzerland\"\r\nPopulation=10\r\nLocation is a nested object...\r\nInstance of Fhnw.Ecnf.RoutePlanner.RoutePlannerLib.WayPoint\r\nName=\"Bern\"\r\nLongitude=2.2\r\nLatitude=1.1\r\nEnd of instance\r\nEnd of instance\r\n"; const string cityString = cityString1 + cityString2; var expectedCity1 = new City("Aarau", "Switzerland", 10, 1.1, 2.2); var expectedCity2 = new City("Bern", "Switzerland", 10, 1.1, 2.2); var stream = new StringReader(cityString); var reader = new SimpleObjectReader(stream); var city1 = reader.Next() as City; var city2 = reader.Next() as City; routes.ReadRoutes("linksTestDataLab3.txt"); routes.ReadRoutes("linksTestDa.txt"); Console.ReadLine(); }