class DatabaseManagementTest(unittest.TestCase): """Tests for managing ArangoDB databases.""" def setUp(self): self.arango = Arango() self.db_name = get_next_db_name(self.arango) # Test database cleaup self.addCleanup(self.arango.delete_database, name=self.db_name, safe_delete=True) def test_database_create_and_delete(self): self.arango.create_database(self.db_name) self.assertIn(self.db_name, self.arango.databases["all"]) # Check the properties of the new database self.assertEqual(self.arango.database(self.db_name).name, self.db_name) self.assertEqual(self.arango.database(self.db_name).is_system, False) # Delete the test database self.arango.delete_database(self.db_name) self.assertNotIn(self.db_name, self.arango.databases["all"]) def test_database_properties(self): db = self.arango.database("_system") self.assertEqual(db.name, "_system") self.assertTrue(isinstance(db.properties, dict)) self.assertTrue(is_string(db.id)) self.assertTrue(is_string(db.path)) self.assertEqual(db.is_system, True)
#! /usr/bin/env python import ujson import fileinput import arango from arango import Arango from pprint import pprint dbcnx = Arango(host="localhost") try: dbcnx.delete_database("eris0") except arango.exceptions.DatabaseDeleteError: pass dbcnx.create_database("eris0") db = dbcnx.database("eris0") db.create_collection("events") col = db.collection("events") col.wait_for_sync = False def main(): for line in fileinput.input(): line = line.strip() event = None try: event = ujson.loads(line) except ValueError: continue event["_key"] = event["id"] del event["id"] col.create_document(event)
import os import sys import uuid from arango import Arango db_name = 'fstest' col_name = 'filesystem' arango = Arango(host="localhost", port=8529) try: arango.delete_database(db_name) except: pass db = arango.create_database(db_name) graph = db.create_graph('filesystem') fsnodes = db.create_collection('fsnodes') graph.create_vertex_collection('fsnodes') db.create_collection('contains', is_edge=True) graph.create_edge_definition(edge_collection='contains', from_vertex_collections=['fsnodes'], to_vertex_collections=['fsnodes']) for dirname, dirnames, filenames in os.walk(sys.argv[1]): key = dirname.replace('/', '_') d = dict(type='dir', dirname=dirname, _key=key) graph.create_vertex('fsnodes', d) for fname in filenames: full_filename = filename = os.path.join(dirname, fname)
import os import sys import uuid from arango import Arango db_name = 'fstest' col_name = 'filesystem' arango = Arango(host="localhost", port=8529) try: arango.delete_database(db_name) except: pass db = arango.create_database(db_name) graph = db.create_graph('filesystem') fsnodes = db.create_collection('fsnodes') graph.create_vertex_collection('fsnodes') db.create_collection('contains', is_edge=True) graph.create_edge_definition( edge_collection='contains', from_vertex_collections=['fsnodes'], to_vertex_collections=['fsnodes']) for dirname, dirnames, filenames in os.walk(sys.argv[1]): key = dirname.replace('/', '_') d = dict(type='dir', dirname=dirname, _key=key) graph.create_vertex('fsnodes', d)