Esempio n. 1
0
def format_url_func_invalid_mode_test():
    instance = MagicMock()
    valhalla = Valhalla(instance=instance, service_url='http://bob.com', costing_options={'bib': 'bom'})
    with pytest.raises(InvalidArguments) as excinfo:
        origin = make_pt_object(type_pb2.ADDRESS, 1.0, 1.0)
        destination = make_pt_object(type_pb2.ADDRESS, 2.0, 2.0)
        valhalla._make_request_arguments("bob", [origin], [destination], MOCKED_REQUEST)
    assert '400 Bad Request' in str(excinfo.value)
    assert 'InvalidArguments' == str(excinfo.typename)
Esempio n. 2
0
def format_url_func_with_car_mode_test():
    instance = MagicMock()
    instance.walking_speed = 1
    instance.bike_speed = 2

    origin = make_pt_object(type_pb2.ADDRESS, 1.0, 1.0)
    destination = make_pt_object(type_pb2.ADDRESS, 2.0, 2.0)

    valhalla = Valhalla(instance=instance,
                        service_url='http://bob.com',
                        costing_options={'bib': 'bom'})
    valhalla.costing_options = None
    data = valhalla._make_request_arguments("car", [origin], [destination],
                                            MOCKED_REQUEST)
    assert json.loads(data) == json.loads(''' {
                                      "locations": [
                                        {
                                          "lat": 1,
                                          "type": "break",
                                          "lon": 1
                                        },
                                        {
                                          "lat": 2,
                                          "type": "break",
                                          "lon": 2
                                        }
                                      ],
                                      "costing": "auto",
                                      "directions_options": {
                                        "units": "kilometers"
                                      }
                                    }''')
Esempio n. 3
0
def format_url_func_with_different_ptobject_test():
    instance = MagicMock()
    instance.walking_speed = 1
    instance.bike_speed = 2
    valhalla = Valhalla(instance=instance,
                        service_url='http://bob.com',
                        costing_options={'bib': 'bom'})
    valhalla.costing_options = None
    for ptObject_type in (type_pb2.STOP_POINT,
                          type_pb2.STOP_AREA,
                          type_pb2.ADDRESS,
                          type_pb2.ADMINISTRATIVE_REGION,
                          type_pb2.POI):
        origin = make_pt_object(ptObject_type, 1.0, 1.0)
        destination = make_pt_object(ptObject_type, 2.0, 2.0)
        data = valhalla._make_request_arguments("car", [origin], [destination], MOCKED_REQUEST)
        assert json.loads(data) == json.loads(''' {
                                         "locations": [
                                           {
                                             "lat": 1,
                                             "type": "break",
                                             "lon": 1
                                            },
                                            {
                                              "lat": 2,
                                              "type": "break",
                                              "lon": 2
                                            }
                                            ],
                                            "costing": "auto",
                                            "directions_options": {
                                            "units": "kilometers"
                                            }
                                            }''')
Esempio n. 4
0
def direct_path_func_without_response_valhalla_test():
    instance = MagicMock()
    valhalla = Valhalla(instance=instance, service_url='http://bob.com', costing_options={'bib': 'bom'})
    valhalla.breaker = MagicMock()
    valhalla._call_valhalla = MagicMock(return_value=None)
    valhalla._make_request_arguments = MagicMock(return_value=None)
    with pytest.raises(TechnicalError) as excinfo:
        valhalla._direct_path(None, None, None, None, None, None, None, None)
    assert '500 Internal Server Error' in str(excinfo.value)
    assert 'TechnicalError' == str(excinfo.typename)