Ejemplo n.º 1
0
def call_valhalla_func_with_unknown_exception_test():
    instance = MagicMock()
    valhalla = Valhalla(instance=instance,
                        service_url='http://bob.com',
                        costing_options={'bib': 'bom'})
    valhalla.breaker = MagicMock()
    valhalla.breaker.call = MagicMock(side_effect=ValueError())
    assert valhalla._call_valhalla(valhalla.service_url) == None
Ejemplo n.º 2
0
def call_valhalla_func_with_circuit_breaker_error_test():
    instance = MagicMock()
    valhalla = Valhalla(instance=instance,
                        service_url='http://bob.com',
                        costing_options={'bib': 'bom'})
    valhalla.breaker = MagicMock()
    valhalla.breaker.call = MagicMock(side_effect=pybreaker.CircuitBreakerError())
    assert valhalla._call_valhalla(valhalla.service_url) == None
Ejemplo n.º 3
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)
Ejemplo n.º 4
0
def direct_path_func_with_status_code_400_response_valhalla_test():
    instance = MagicMock()
    valhalla = Valhalla(instance=instance,
                        url='http://bob.com',
                        costing_options={'bib': 'bom'})
    valhalla.breaker = MagicMock()
    response = requests.Response()
    response.status_code = 400
    response.url = valhalla.service_url
    valhalla._call_valhalla = MagicMock(return_value=response)
    valhalla._format_url = MagicMock(return_value=valhalla.service_url)

    nav_resp = valhalla.direct_path(None, None, None, None, None)

    assert response.status_code == nav_resp.status_code
    assert nav_resp.error.message == 'Valhalla service unavailable, impossible to query : http://bob.com'