Exemplo n.º 1
0
def test_store_and_retrieve_simple_config():
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    store_val = {"val1": True, "val2": None, "val3": 1.4}
    adapter.store_config("myconf", store_val)
    read_val = adapter.read_config("myconf")
    assert read_val == store_val
    assert read_val is not store_val
Exemplo n.º 2
0
def test_on_refresh_and_retrieve(mock_response):
    """just confirm that the aliasing of these functions does not change anything"""
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    adapter.on_refresh(mock_response)

    data = adapter.read_as_dict()
    assert data == mock_response.by_resource_server
Exemplo n.º 3
0
def test_constructor(success, use_file, kwargs, db_filename):
    if success:
        if use_file:
            assert SQLiteAdapter(db_filename, **kwargs)
        else:
            assert SQLiteAdapter(**kwargs)
    else:
        with pytest.raises(TypeError):
            if use_file:
                SQLiteAdapter(db_filename, **kwargs)
            else:
                SQLiteAdapter(**kwargs)
Exemplo n.º 4
0
def test_remove_config():
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    store_val = {"val1": True, "val2": None, "val3": 1.4}
    adapter.store_config("myconf", store_val)
    adapter.store_config("myconf2", store_val)
    removed = adapter.remove_config("myconf")
    assert removed
    read_val = adapter.read_config("myconf")
    assert read_val is None
    read_val = adapter.read_config("myconf2")
    assert read_val == store_val

    removed = adapter.remove_config("myconf")
    assert not removed
Exemplo n.º 5
0
def token_storage_adapter():
    if not hasattr(token_storage_adapter, "_instance"):
        # namespace is equal to the current environment
        token_storage_adapter._instance = SQLiteAdapter(
            os.path.expanduser("~/.globus_searchable_files.db"),
            namespace="DEFAULT")
    return token_storage_adapter._instance
Exemplo n.º 6
0
def test_multiple_adapters_store_and_retrieve(mock_response, db_filename):
    adapter1 = SQLiteAdapter(db_filename)
    adapter2 = SQLiteAdapter(db_filename)
    adapter1.store(mock_response)

    data = adapter2.read_as_dict()
    assert data == mock_response.by_resource_server
Exemplo n.º 7
0
def test_multiple_adapters_store_and_retrieve_different_namespaces(
        mock_response, db_filename):
    adapter1 = SQLiteAdapter(db_filename, namespace="foo")
    adapter2 = SQLiteAdapter(db_filename, namespace="bar")
    adapter1.store(mock_response)

    data = adapter2.read_as_dict()
    assert data == {}
Exemplo n.º 8
0
def token_storage_adapter():
    fname = os.path.expanduser("~/.globus_search.db")
    # if the file exists and world or group permissions are set, fix
    if os.path.exists(fname):
        stat = os.stat(fname)
        if (stat.st_mode & 0o077) != 0:
            os.chmod(fname, 0o600)
    if not hasattr(token_storage_adapter, "_instance"):
        # namespace is equal to the current environment
        token_storage_adapter._instance = SQLiteAdapter(
            fname, namespace=GLOBUS_ENV or "DEFAULT"
        )
    return token_storage_adapter._instance
Exemplo n.º 9
0
def test_token_storage(mock_login_token_response):
    """Put memory-backed sqlite token storage in place for the testsuite to use."""
    mockstore = SQLiteAdapter(":memory:")
    mockstore.store_config(
        "auth_client_data",
        {"client_id": "fakeClientIDString", "client_secret": "fakeClientSecret"},
    )
    mockstore.store(mock_login_token_response)
    return mockstore
Exemplo n.º 10
0
def test_remove_tokens(mock_response):
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    adapter.store(mock_response)

    removed = adapter.remove_tokens_for_resource_server("resource_server_1")
    assert removed
    data = adapter.read_as_dict()
    assert data == {
        "resource_server_2": mock_response.by_resource_server["resource_server_2"]
    }

    removed = adapter.remove_tokens_for_resource_server("resource_server_1")
    assert not removed
Exemplo n.º 11
0
def test_store_and_retrieve(mock_response):
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    adapter.store(mock_response)

    data = adapter.read_as_dict()
    assert data == mock_response.by_resource_server
Exemplo n.º 12
0
def test_load_missing_token_data():
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    assert adapter.read_as_dict() == {}
Exemplo n.º 13
0
def test_load_missing_config_data():
    adapter = SQLiteAdapter(MEMORY_DBNAME)
    assert adapter.read_config("foo") is None