示例#1
0
def test_run_query(query_kind, params, universal_access_token, flowapi_url):
    """
    Test that queries can be run, and return a QueryResult object.
    """
    query_spec = getattr(flowclient, query_kind)(**params)
    con = flowclient.Connection(url=flowapi_url, token=universal_access_token)

    get_result(connection=con, query=query_spec)
示例#2
0
def test_get_result_by_params(monkeypatch, api_mock, token):
    """
    Test requesting a query based on params makes the right calls.
    """
    api_mock.post.return_value.status_code = 202
    api_mock.post.return_value.headers = {"Location": "/99"}
    c = Connection("foo", token)
    dummy_method = Mock()
    monkeypatch.setattr(flowclient.client, "get_result_by_query_id",
                        dummy_method)
    get_result(c, {"query_kind": "query_type", "params": {"param": "value"}})
    # Should request the query by id
    dummy_method.assert_called_with(c, "99")
示例#3
0
def test_get_result_by_params(monkeypatch, token):
    """
    Test requesting a query based on params makes the right calls.
    """
    connection_mock = Mock()
    connection_mock.post_json.return_value.status_code = 202
    connection_mock.post_json.return_value.headers = {"Location": "/99"}
    dummy_method = Mock()
    monkeypatch.setattr(flowclient.client, "get_result_by_query_id", dummy_method)
    get_result(
        connection=connection_mock,
        query_spec={"query_kind": "query_type", "params": {"param": "value"}},
    )
    # Should request the query by id
    dummy_method.assert_called_with(
        connection=connection_mock, disable_progress=None, query_id="99"
    )
示例#4
0
def test_fail_query_incorrect_parameters(query_kind, params,
                                         universal_access_token, flowapi_url):
    """
    Test that queries fail with incorrect parameters.
    """
    query_spec = getattr(flowclient, query_kind)(**params)
    con = flowclient.Connection(url=flowapi_url, token=universal_access_token)
    with pytest.raises(flowclient.client.FlowclientConnectionError,
                       match="Must be one of:"):
        result_dataframe = get_result(connection=con, query=query_spec)
示例#5
0
def test_run_query(query_kind, params, access_token_builder, api_host):
    """Test that queries can be run, and return a QueryResult object."""
    con = flowclient.Connection(
        api_host,
        access_token_builder({
            query_kind: {
                "permissions": permissions_types,
                "spatial_aggregation": aggregation_types,
            }
        }),
    )
    result_dataframe = get_result(con,
                                  getattr(flowclient, query_kind)(**params))
    assert 0 < len(result_dataframe)