def test_delete_table(): store = SmolStore() table1 = store.table("one") table2 = store.table("two") table1.insert({"Hey": "there"}) table2.insert({"Hello": "you"}) assert len(store._tables) == 2 store.delete_table("two") assert len(store._tables) == 1
def test_save_and_load_docs_file(create_file_store): store = create_file_store docs = store.table("docs") docs.insert({"username": "******"}) try: store.save() store = SmolStore("store.db") docs = store.table("docs") doc = docs.first(docs.fields.username == "ray") assert doc == {"username": "******"} finally: os.remove("store.db")
def test_save_empty_table_to_file(create_file_store): store = create_file_store try: _ = store.table() store.save() assert os.path.exists("store.db") store = SmolStore("store.db") assert isinstance(store._tables.get("_default"), Table) finally: os.remove("store.db")
def new_doc(new_dict): store = SmolStore() table = store.table() table.insert(new_dict) return table.first(table.fields.key == "value")
def test_init_in_memory(): store = SmolStore() assert isinstance(store, SmolStore)
def test_delete_nonexistent_table_ignored(): store = SmolStore() store.delete_table("non-existent")
def test_retrieve_table(): store = SmolStore() table1 = store.table("new_table") table2 = store.table("new_table") assert table1 is table2
def test_create_named_table(): store = SmolStore() _ = store.table("new_table") assert isinstance(store._tables.get("new_table"), Table)
def create_file_store(): filename = "store.db" store = SmolStore(filename) return store
def store(): return SmolStore()