def test_features_call(self): url = 'https://host_of_bragi' kwargs = { 'params': { u'pt_dataset': 'main_autocomplete_test', }, 'timeout': 10 } from urllib import urlencode url += "/features/1234?{}".format( urlencode(kwargs.get('params'), doseq=True)) mock_requests = MockRequests({url: (BRAGI_MOCK_RESPONSE, 200)}) with mock.patch('requests.get', mock_requests.get): response = self.query_region( "places/1234?&pt_dataset=main_autocomplete_test") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)'
def test_autocomplete_call(self): url = 'https://host_of_bragi/autocomplete' kwargs = { 'params': { u'q': u'bob', u'type[]': [ u'public_transport:stop_area', u'street', u'house', u'poi', u'city' ], u'limit': 10, u'pt_dataset': 'main_autocomplete_test', }, 'timeout': 10 } from urllib import urlencode url += "?{}".format(urlencode(kwargs.get('params'), doseq=True)) mock_requests = MockRequests({url: (BRAGI_MOCK_RESPONSE, 200)}) with mock.patch('requests.get', mock_requests.get): response = self.query_region( "places?q=bob&pt_dataset=main_autocomplete_test&type[]=stop_area" "&type[]=address&type[]=poi&type[]=administrative_region") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)'
def test_autocomplete_call_override(self): """" test that the _autocomplete param switch the right autocomplete service """ url = 'https://host_of_bragi' params = { 'q': u'bob', 'type[]': [u'public_transport:stop_area', u'street', u'house', u'poi', u'city'], 'limit': 10, 'pt_dataset': 'main_routing_test' } url += "/autocomplete?{}".format(urlencode(params, doseq=True)) mock_requests = MockRequests({ url: (BRAGI_MOCK_RESPONSE, 200) }) with mock.patch('requests.get', mock_requests.get): response = self.query_region("places?q=bob&type[]=stop_area&type[]=address&type[]=poi" "&type[]=administrative_region") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)' # with a query on kraken, the results should be different response = self.query_region("places?q=Park&_autocomplete=kraken") r = response.get('places') assert len(r) >= 1 assert r[0]['name'] == 'first parking (Condom)'
def test_autocomplete_call(self): url = 'https://host_of_bragi/autocomplete' params = { 'q': u'bob', 'type[]': [u'public_transport:stop_area', u'street', u'house', u'poi', u'city'], 'limit': 10, 'pt_dataset': 'main_routing_test' } url += "?{}".format(urlencode(params, doseq=True)) mock_requests = MockRequests({ url: (BRAGI_MOCK_RESPONSE, 200) }) with mock.patch('requests.get', mock_requests.get): response = self.query_region("places?q=bob&pt_dataset=main_routing_test&type[]=stop_area" "&type[]=address&type[]=poi&type[]=administrative_region") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)' fbs = response['feed_publishers'] assert {fb['id'] for fb in fbs} >= {u'osm', u'bano'}
def test_global_place_uri(self): mock_requests = MockRequests( {'https://host_of_bragi/features/bob': (BRAGI_MOCK_RESPONSE, 200)}) with mock.patch('requests.get', mock_requests.get): response = self.query("/v1/places/bob") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)'
def test_global_place_uri(self): mock_requests = MockRequests({ # there is no authentication so all the known pt_dataset are added as parameters 'https://host_of_bragi/features/bob?pt_dataset=main_routing_test': (BRAGI_MOCK_RESPONSE, 200) }) with mock.patch('requests.get', mock_requests.get): response = self.query("/v1/places/bob") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)'
def test_autocomplete_call(self): url = 'https://host_of_bragi/autocomplete' kwargs = { 'params': { u'q': u'bob', u'type[]': [u'stop_area', u'address', u'poi', u'city'], u'limit': 10, u'pt_dataset': 'main_autocomplete_test', }, 'timeout': 10 } from urllib import urlencode url += "?{}".format(urlencode(kwargs.get('params'), doseq=True)) mock_requests = MockRequests({ url: ({ "features": [{ "geometry": { "coordinates": [3.282103, 49.847586], "type": "Point" }, "properties": { "geocoding": { "city": "Bobtown", "housenumber": "20", "id": "49.847586;3.282103", "label": "20 Rue Bob (Bobtown)", "name": "Rue Bob", "postcode": "02100", "street": "Rue Bob", "type": "house", "citycode": "02000", "administrative_regions": [{ "id": "admin:fr:02000", "insee": "02000", "level": 8, "label": "Bobtown (02000)", "zip_codes": ["02000"], "weight": 1, "coord": { "lat": 48.8396154, "lon": 2.3957517 } }], } }, "type": "Feature" }] }, 200) }) with mock.patch('requests.get', mock_requests.get): response = self.query_region( "places?q=bob&pt_dataset=main_autocomplete_test&type[]=stop_area" "&type[]=address&type[]=poi&type[]=administrative_region") is_valid_global_autocomplete(response, depth=1) r = response.get('places') assert len(r) == 1 assert r[0]['name'] == '20 Rue Bob (Bobtown)' assert r[0]['embedded_type'] == 'address' assert r[0]['address']['name'] == 'Rue Bob' assert r[0]['address']['label'] == '20 Rue Bob (Bobtown)'