Esempio n. 1
0
def test_connection():
    # Port is incorrect
    # pytest.raises(TypeError, message="...1 required positional argument"):
    with pytest.raises(TypeError, match=r".* required positional argument.*"):
        CONN = dataplug.Client({
            "protocol": "http",
            "port": 44000,
            "domain": "dataflex"
        })
    CONN = dataplug.Client("D0", "C0", {
        "protocol": "http",
        "port": 44000,
        "domain": "dataflex"
    })
    assert CONN.is_connected() is False

    # Port is correct and connection is established,
    # even though domain does not exist
    D1 = "newtestdomain"
    CONN = dataplug.Client(D1, "waka", {
        "protocol": "http",
        "port": cfg.TEST_PORT,
        "unused": "datadoesnotexist"
    })
    assert CONN.is_connected() is True
    assert CONN.domain.name == D1
    assert CONN.db.delete_database(D1, ignore_missing=True) is True
    assert CONN.domain.name == D1

    assert CONN.is_connected() is True
Esempio n. 2
0
def test_check_config():
    CONN = dataplug.Client("", "", {})
    assert CONN is not None
    CONN.db_config[""] = ""
    assert CONN.db_config["protocol"] == "http"
    CONN.check_config()
    assert CONN.db_config["port"] == 8529
    assert CONN.db_config["protocol"] == "http"
Esempio n. 3
0
def test_create_collections():
    D1 = "dataflex"
    C1 = "new_collection"

    Client = dataplug.Client(D1, C1, {
        "protocol": "http",
        "port": cfg.TEST_PORT,
        "domain": "dataflex"
    })
    assert Client.is_connected() is True
    assert Client.delete_collection() is True
    assert Client.delete_collection() is False
Esempio n. 4
0
def test_settings():
    CONN = dataplug.Client("D0", "C0", {
        "protocol": "http",
        "port": cfg.TEST_PORT,
        "domain": "dataflex"
    })
    assert CONN.is_connected() is True
    assert CONN.domain.name == "D0"
    assert CONN.collection.name == "C0"

    CONN.set("dataflex", "col1")
    assert CONN.domain.name == "dataflex"
    assert CONN.collection.name == "col1"
Esempio n. 5
0
    def __init__(
        self,
        domain,
        client_config={},
    ):
        """ Graph operations

            :param domain: acting domain. for now graph operations can only
            happen on one domain. A multi-domain feature could be nice for
            problems that need the semantic for domain-based discrimination.
            domain source and destination should be encoded somewhere in
            documents or somewhere.

        """

        self.graph = None
        self._db_config = client_config
        self.client = dataplug.Client(domain=domain,
                                      collection="",
                                      db_config=client_config)
Esempio n. 6
0
def test_empty_client():
    CONN = dataplug.Client("", "")
    assert CONN is not None
    CONN = dataplug.Client("", "", {})
    assert CONN is not None