OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-atomspace-cog commits / f543e5e

Key deletion is no longer allowed
f543e5ede9bdff09f13b9e757849bcfece475fb1
by Linas Vepštas <linasvepstas@gmail.com> · 2025-12-09T03:33:31.000Z

Changed files (2) +11 -9

tests/persist/cog-simple/SimpleBasicDeleteUTest.cxxtest +6 -5
……@@ -313,21 +313,22 @@ void SimpleBasicDeleteUTest::test_key_deletion(void)
313313 printf("key=%s\n", k->get_name().c_str());
314314 TS_ASSERT_EQUALS(hs.size(), 3);
315315
316 // Remove one of the keys
316 // Attempt to remove one of the keys. But this is not possible,
317 // both storage, and the AtomSpace itself block this,
317318 store->remove_atom(as, kb);
318319 as->extract_atom(kb);
319320 // +1 for *-IsKeyFlag-*
320 TS_ASSERT_EQUALS(as->get_size(), 5);
321 TS_ASSERT_EQUALS(as->get_size(), 6);
321322
322 // Verify the key was deleted by loading only PredicateNodes.
323 // Verify the key was NOT deleted by loading only PredicateNodes.
323324 as = createAtomSpace();
324325 hsn = as->add_node(COG_SIMPLE_STORAGE_NODE, std::string(uri));
325326 store = StorageNodeCast(hsn);
326327 store->open();
327328 store->fetch_all_atoms_of_type(PREDICATE_NODE);
328329
329 // key-b should be gone, key-a and key-c should be present
330 TS_ASSERT(nullptr == as->get_node(PREDICATE_NODE, "key-b"));
330 // All keys should have been loaded.
331 TS_ASSERT(nullptr != as->get_node(PREDICATE_NODE, "key-b"));
331332 TS_ASSERT(nullptr != as->get_node(PREDICATE_NODE, "key-a"));
332333 TS_ASSERT(nullptr != as->get_node(PREDICATE_NODE, "key-c"));
333334
tests/persist/cog-storage/BasicDeleteUTest.cxxtest +5 -4
……@@ -314,11 +314,12 @@ void BasicDeleteUTest::test_key_deletion(void)
314314 printf("key=%s\n", k->get_name().c_str());
315315 TS_ASSERT_EQUALS(hs.size(), 3);
316316
317 // Remove one of the keys
317 // Attempt to remove one of the keys. Neither storage, nor
318 // AtomSpace will allow this.
318319 store->remove_atom(as, kb);
319320 as->extract_atom(kb);
320321 // +1 for *-IsKeyFlag-*
321 TS_ASSERT_EQUALS(as->get_size(), 5);
322 TS_ASSERT_EQUALS(as->get_size(), 6);
322323
323324 // Verify the key was deleted by loading only PredicateNodes.
324325 as = createAtomSpace();
……@@ -328,8 +329,8 @@ void BasicDeleteUTest::test_key_deletion(void)
328329 store->fetch_all_atoms_of_type(PREDICATE_NODE);
329330 store->barrier();
330331
331 // key-b should be gone, key-a and key-c should be present
332 TS_ASSERT(nullptr == as->get_node(PREDICATE_NODE, "key-b"));
332 // All keys should have been restored.
333 TS_ASSERT(nullptr != as->get_node(PREDICATE_NODE, "key-b"));
333334 TS_ASSERT(nullptr != as->get_node(PREDICATE_NODE, "key-a"));
334335 TS_ASSERT(nullptr != as->get_node(PREDICATE_NODE, "key-c"));
335336