예제 #1
0
        public void SearchAsync()
        {
            var fakekey = "fakekey";
            var mockedHttpRequest = HttpRequestMocker.GetMockedRequesterFor(new Uri(
                            "https://api.sl.se/api2/typeahead.json/?SearchString=Solna&StationsOnly=false&key=" + fakekey), GetTestResponse());
            var search = new PlaceSearchClient(new HttpClient("https://api.sl.se/", mockedHttpRequest, new UrlHelper()))
            {
                ApiToken = fakekey
            };
            var resultAsync = search.SearchAsync(new PlaceSearchRequest
            {
                SearchString = "Solna",
                StationsOnly = false
            });

            resultAsync.Wait();
            var result = resultAsync.Result;
            Assert.IsTrue(result.ResponseData.Count() == 10);
            Assert.IsTrue(result.StatusCode == StatusCode.Ok);
            var first = result.ResponseData.FirstOrDefault();
            var last = result.ResponseData.LastOrDefault();
            Assert.IsTrue(first != null);
            Assert.IsTrue(last != null);
            Assert.IsTrue(last != first);

            Assert.IsTrue(first.Name.Equals("Solna (Solna)"));
            Assert.IsTrue(first.X == "18011865");
            Assert.IsTrue(first.Y == "59364312");
            Assert.IsTrue(first.Latitude == 18.011865);
            Assert.IsTrue(first.Longitude == 59.364312);
            Assert.IsTrue(first.SiteId.Equals(9509));

            Assert.IsTrue(last.Latitude == 17.986731);
            Assert.IsTrue(last.Longitude == 9.375783);
        }
        public void SearchSuccessTest()
        {
            var token = EnvironmentHelper.GetEnvironmentVariable("PlaceSearchClientApiToken");
            var client = new PlaceSearchClient
            {
                GzipEnabled = true,
                ApiToken = token
            };
            var result = client.Search(new PlaceSearchRequest
            {
                MaxResults = 10,
                SearchString = "solna",
                StationsOnly = false
            });
            Assert.IsTrue(result.StatusCode == StatusCode.Ok);

            var station = result.ResponseData.FirstOrDefault();

            Assert.IsTrue(station != null);
            Assert.IsTrue(station.Name.ToLower().Contains("solna"));
        }
 public void SearchFailTest()
 {
     var token = EnvironmentHelper.GetEnvironmentVariable("PlaceSearchClientApiToken");
     var client = new PlaceSearchClient(token, "https://arin.sinabian.se/")
     {
         GzipEnabled = true,
         ApiToken = token
     };
     Sites sites = null;
     try
     {
         sites = client.Search(new PlaceSearchRequest
         {
             MaxResults = 10,
             SearchString = "solna",
             StationsOnly = false
         });
     }
     catch (HttpRequestException)
     {
         Assert.IsTrue(sites == null);
     }
 }