public void RouteRequest_Defaults() { var r = new ViarouteRequest(); Assert.AreEqual <int>(18, r.Zoom); Assert.AreEqual <bool>(false, r.Instructions); Assert.AreEqual <bool>(true, r.Alternative); Assert.AreEqual <bool>(true, r.Geometry); Assert.AreEqual <bool>(true, r.Compression); Assert.AreEqual <bool>(false, r.UTurns); Assert.AreEqual <bool>(false, r.UTurnAtTheVia); Assert.IsNull(r.Hint); Assert.IsNull(r.Checksum); }
public void RouteRequest_Url() { var r = new ViarouteRequest(); r.Locations = locations; var locParams = ParamValues(r.UrlParams, "loc"); Assert.AreEqual <int>(locations.Length, locParams.Length); Assert.IsTrue(locParams.Contains("52.503033,13.420526")); Assert.IsTrue(locParams.Contains("52.516582,13.42929")); r.SendLocsAsEncodedPolyline = true; Assert.AreEqual <int>(0, ParamValues(r.UrlParams, "loc").Length); Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "locs").Length); r.Zoom = 5; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "z").Length); Assert.AreEqual <string>("5", ParamValues(r.UrlParams, "z")[0]); r.Instructions = true; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "instructions").Length); Assert.AreEqual <string>("true", ParamValues(r.UrlParams, "instructions")[0]); r.Alternative = false; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "alt").Length); Assert.AreEqual <string>("false", ParamValues(r.UrlParams, "alt")[0]); r.Geometry = false; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "geometry").Length); Assert.AreEqual <string>("false", ParamValues(r.UrlParams, "geometry")[0]); r.Compression = false; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "compression").Length); Assert.AreEqual <string>("false", ParamValues(r.UrlParams, "compression")[0]); r.UTurns = true; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "uturns").Length); Assert.AreEqual <string>("true", ParamValues(r.UrlParams, "uturns")[0]); r.UTurnAtTheVia = true; Assert.AreEqual <int>(1, ParamValues(r.UrlParams, "u").Length); Assert.AreEqual <string>("true", ParamValues(r.UrlParams, "u")[0]); r.Hint = "hinttest"; Assert.AreEqual <string>("hinttest", ParamValues(r.UrlParams, "hint")[0]); r.Checksum = "checksumTest"; Assert.AreEqual <string>("checksumTest", ParamValues(r.UrlParams, "checksum")[0]); }
/// <summary> /// This service provides shortest path queries with multiple via locations. /// It supports the computation of alternative paths as well as giving turn instructions. /// </summary> /// <param name="requestParams"></param> /// <returns></returns> public ViarouteResponse Route(ViarouteRequest requestParams) { return(Send <ViarouteResponse>(RouteServiceName, requestParams.UrlParams)); }
/// <summary> /// The trip plugin solves the famous Traveling Salesman Problem using a greedy heuristic (farest-insertion algorithm). /// The returned path does not have to be the shortest path, as TSP is NP-hard it is only an approximation. /// Note that if the input coordinates can not be joined by a single trip (e.g. the coordinates are on several disconnecte islands) /// multiple trips for each connected component are returned. /// Trip does not support computing alternatives. /// <param name="requestParams">Trip does not support computing alternatives</param> /// <returns></returns> public TripResponse Trip(ViarouteRequest requestParams) { return(Send <TripResponse>(TripServiceName, requestParams.UrlParams)); }