OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-atomspace-rocks commits / 1c9c974

Update unit tests for *-TruthValueKey-* removal
Removing the special-csing also throws off all the counts by one.
1c9c9747e30d4ea1ad9ee1694d69719f53dfcc42
by Linas Vepstas <linasvepstas@gmail.com> · 2026-01-20T18:39:28.000Z

Changed files (6) +63 -61

tests/persist/monospace/MonoBasicDeleteUTest.cxxtest +31 -32
……@@ -130,8 +130,8 @@ void BasicDeleteUTest::test_duplicates(void)
130130 TS_ASSERT_EQUALS(as->get_size(), 4);
131131 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
132132 store->load_atomspace();
133 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
134 TS_ASSERT_EQUALS(as->get_size(), 5);
133 // +1 for *-IsKeyFlag-*, +1 for *-open-*
134 TS_ASSERT_EQUALS(as->get_size(), 4);
135135
136136 store->erase();
137137 store->close();
……@@ -189,8 +189,8 @@ void BasicDeleteUTest::test_recursive(void)
189189 as->extract_atom(ha, true);
190190 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
191191 store->load_atomspace();
192 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
193 TS_ASSERT_EQUALS(as->get_size(), 4);
192 // +1 for *-IsKeyFlag-*, +1 for *-open-*
193 TS_ASSERT_EQUALS(as->get_size(), 3);
194194
195195 // --------------------------------------
196196 // Do it again, but with a different order.
……@@ -203,16 +203,16 @@ void BasicDeleteUTest::test_recursive(void)
203203 store->close();
204204 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
205205 store->load_atomspace();
206 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
207 TS_ASSERT_EQUALS(as->get_size(), 7);
206 // +1 for *-IsKeyFlag-*, +1 for *-open-*
207 TS_ASSERT_EQUALS(as->get_size(), 6);
208208
209209 store->remove_atom(as.get(), ha, true);
210210 store->close();
211211 as->extract_atom(ha, true);
212212 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
213213 store->load_atomspace();
214 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
215 TS_ASSERT_EQUALS(as->get_size(), 4);
214 // +1 for *-IsKeyFlag-*, +1 for *-open-*
215 TS_ASSERT_EQUALS(as->get_size(), 3);
216216
217217 // --------------------------------------
218218 // Do it again, but with a complex order.
……@@ -225,16 +225,16 @@ void BasicDeleteUTest::test_recursive(void)
225225 store->close();
226226 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
227227 store->load_atomspace();
228 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
229 TS_ASSERT_EQUALS(as->get_size(), 7);
228 // +1 for *-IsKeyFlag-*, +1 for *-open-*
229 TS_ASSERT_EQUALS(as->get_size(), 6);
230230
231231 store->remove_atom(as.get(), ha, true);
232232 store->close();
233233 as->extract_atom(ha, true);
234234 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
235235 store->load_atomspace();
236 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
237 TS_ASSERT_EQUALS(as->get_size(), 4);
236 // +1 for *-IsKeyFlag-*, +1 for *-open-*
237 TS_ASSERT_EQUALS(as->get_size(), 3);
238238
239239 // --------------------------------------
240240 // Do it again, but more deeply.
……@@ -248,16 +248,16 @@ void BasicDeleteUTest::test_recursive(void)
248248 store->close();
249249 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
250250 store->load_atomspace();
251 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
252 TS_ASSERT_EQUALS(as->get_size(), 8);
251 // +1 for *-IsKeyFlag-*, +1 for *-open-*
252 TS_ASSERT_EQUALS(as->get_size(), 7);
253253
254254 store->remove_atom(as.get(), ha, true);
255255 store->close();
256256 as->extract_atom(ha, true);
257257 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
258258 store->load_atomspace();
259 // +1 for *-IsKeyFlag-* (no TVs set, so no *-TruthValueKey-*), +1 for *-open-*
260 TS_ASSERT_EQUALS(as->get_size(), 4);
259 // +1 for *-IsKeyFlag-*, +1 for *-open-*
260 TS_ASSERT_EQUALS(as->get_size(), 3);
261261
262262 // --------------------------------------
263263 store->erase();
……@@ -348,14 +348,13 @@ void BasicDeleteUTest::test_key_deletion(void)
348348 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
349349 TS_ASSERT(store->connected())
350350
351 // We expect 8 atoms: +2 for *-TruthValueKey-* and *-IsKeyFlag-*, +1 for *-open-*
351 // We expect 7 atoms: +1 for *-IsKeyFlag-*, +1 for *-open-*
352352 // (Concept "a"), (Predicate "key-a"), (Predicate "key-b"), (Predicate "key-c"),
353 // (MonoStorageNode ...), (Predicate "*-TruthValueKey-*"),
354 // (Predicate "*-IsKeyFlag-*"), (Predicate "*-open-*")
353 // (MonoStorageNode ...), (Predicate "*-IsKeyFlag-*"), (Predicate "*-open-*")
355354 // Note: key-b removal doesn't work in Mono storage - it's still present
356355 printf("Loading the atomspace ...\n");
357356 store->load_atomspace();
358 TS_ASSERT_EQUALS(as->get_size(), 8);
357 TS_ASSERT_EQUALS(as->get_size(), 7);
359358
360359 // Cannot delete a key that is in use. So all 3 keys remain.
361360 ha = as->add_node(CONCEPT_NODE, "a");
……@@ -441,9 +440,9 @@ void BasicDeleteUTest::test_key_corruption(void)
441440 for (const Handle& h: hset)
442441 printf("Atomspace contains h=%s\n", h->to_short_string().c_str());
443442
444 // Size stays at 7 because (Concept "x") cannot be deleted.
445 // +2 for *-TruthValueKey-* and *-IsKeyFlag-*, +1 for *-open-*
446 TS_ASSERT_EQUALS(as->get_size(), 7);
443 // Size stays at 6 because (Concept "x") cannot be deleted.
444 // +1 for *-IsKeyFlag-*, +1 for *-open-*
445 TS_ASSERT_EQUALS(as->get_size(), 6);
447446
448447 hb = as->add_node(CONCEPT_NODE, "b");
449448 hx = as->add_node(CONCEPT_NODE, "x");
……@@ -456,20 +455,20 @@ void BasicDeleteUTest::test_key_corruption(void)
456455 store->store_atom(hb);
457456 store->barrier();
458457
459 // +2 for *-TruthValueKey-* and *-IsKeyFlag-*, +1 for *-open-*
460 TS_ASSERT_EQUALS(as->get_size(), 9);
458 // +1 for *-IsKeyFlag-*, +1 for *-open-*
459 TS_ASSERT_EQUALS(as->get_size(), 8);
461460
462461 // Remove the value .. again
463462 store->remove_atom(as.get(), hx);
464463 as->extract_atom(hx);
465 // +2 for *-TruthValueKey-* and *-IsKeyFlag-*, +1 for *-open-*
466 TS_ASSERT_EQUALS(as->get_size(), 8);
464 // +1 for *-IsKeyFlag-*, +1 for *-open-*
465 TS_ASSERT_EQUALS(as->get_size(), 7);
467466 store->close();
468467 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
469468 store->load_atomspace();
470 // Size stays at 9 because (Concept "x") cannot be deleted.
471 // +2 for *-TruthValueKey-* and *-IsKeyFlag-*, +1 for *-open-*
472 TS_ASSERT_EQUALS(as->get_size(), 9);
469 // Size stays at 8 because (Concept "x") cannot be deleted.
470 // +1 for *-IsKeyFlag-*, +1 for *-open-*
471 TS_ASSERT_EQUALS(as->get_size(), 8);
473472
474473 // We are done.
475474 store->close();
……@@ -487,10 +486,10 @@ void BasicDeleteUTest::test_key_corruption(void)
487486 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
488487 TS_ASSERT(store->connected())
489488
490 // We expect 9 atoms: +2 for *-TruthValueKey-* and *-IsKeyFlag-*, +1 for *-open-*
489 // We expect 8 atoms: +1 for *-IsKeyFlag-*, +1 for *-open-*
491490 printf("Loading the atomspace ...\n");
492491 store->load_atomspace();
493 TS_ASSERT_EQUALS(as->get_size(), 9);
492 TS_ASSERT_EQUALS(as->get_size(), 8);
494493
495494 // Verify that there are two keys (getKeys() does NOT include internal markers)
496495 hb = as->add_node(CONCEPT_NODE, "b");
tests/persist/monospace/MonoFetchUTest.cxxtest +4 -2
……@@ -211,11 +211,13 @@ void MonoFetchUTest::test_stuff(void)
211211 printf("Expecting %s\n", etv->to_string().c_str());
212212 printf("Got %s\n", tv->to_string().c_str());
213213
214 // BBB should have been clobbered.
214 // BBB should retain its original value (TVs persist in storage).
215215 eval->eval(R"((fetch-atom (Concept "BBB")))");
216216 eval->eval("(barrier)");
217217 tv = eval->eval_v(R"((cog-value (Concept "BBB") tvkey))");
218 TS_ASSERT(tv == nullptr);
218 etv = createFloatValue(std::vector<double>({0.2, 0.22}));
219 TS_ASSERT(tv != nullptr);
220 TS_ASSERT((*tv) == (*etv));
219221
220222 eval->eval("(cog-close)");
221223 logger().debug("END TEST: %s", __FUNCTION__);
tests/persist/monospace/MonoMultiDeleteUTest.cxxtest +2 -3
……@@ -199,10 +199,9 @@ void MultiDeleteUTest::test_add_delete(void)
199199 store->load_atomspace();
200200 printf("Final AtomSpace size=%lu\n", as->get_size());
201201
202 // Size should be 19: the 18 from before plus that annoying
203 // (Predicate "*-TruthValueKey-*")
202 // Size should be 18: the 18 from before, plus predicates:
204203 // +1 for (Predicate "*-open-*"), +1 for (Predicate "*-close-*")
205 size_t expected_size = 5 + n_threads + 6;
204 size_t expected_size = 5 + n_threads + 5;
206205 if (as->get_size() != expected_size)
207206 printf("Error: Bad size! AtomSpace contents =\n%s\n",
208207 as->to_string().c_str());
tests/persist/rocks/BasicDeleteUTest.cxxtest +18 -18
……@@ -133,7 +133,7 @@ void BasicDeleteUTest::test_duplicates(void)
133133 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
134134 store->load_atomspace();
135135 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
136 TS_ASSERT_EQUALS(as->get_size(), 6);
136 TS_ASSERT_EQUALS(as->get_size(), 5);
137137
138138 store->erase();
139139 store->setValue(as->add_node(PREDICATE_NODE, "*-close-*"), createVoidValue());
……@@ -192,7 +192,7 @@ void BasicDeleteUTest::test_recursive(void)
192192 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
193193 store->load_atomspace();
194194 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
195 TS_ASSERT_EQUALS(as->get_size(), 5);
195 TS_ASSERT_EQUALS(as->get_size(), 4);
196196
197197 // --------------------------------------
198198 // Do it again, but with a different order.
……@@ -206,7 +206,7 @@ void BasicDeleteUTest::test_recursive(void)
206206 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
207207 store->load_atomspace();
208208 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
209 TS_ASSERT_EQUALS(as->get_size(), 8);
209 TS_ASSERT_EQUALS(as->get_size(), 7);
210210
211211 store->remove_atom(as.get(), ha, true);
212212 store->setValue(as->add_node(PREDICATE_NODE, "*-close-*"), createVoidValue());
……@@ -214,7 +214,7 @@ void BasicDeleteUTest::test_recursive(void)
214214 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
215215 store->load_atomspace();
216216 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
217 TS_ASSERT_EQUALS(as->get_size(), 5);
217 TS_ASSERT_EQUALS(as->get_size(), 4);
218218
219219 // --------------------------------------
220220 // Do it again, but with a complex order.
……@@ -228,7 +228,7 @@ void BasicDeleteUTest::test_recursive(void)
228228 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
229229 store->load_atomspace();
230230 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
231 TS_ASSERT_EQUALS(as->get_size(), 8);
231 TS_ASSERT_EQUALS(as->get_size(), 7);
232232
233233 store->remove_atom(as.get(), ha, true);
234234 store->setValue(as->add_node(PREDICATE_NODE, "*-close-*"), createVoidValue());
……@@ -236,7 +236,7 @@ void BasicDeleteUTest::test_recursive(void)
236236 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
237237 store->load_atomspace();
238238 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
239 TS_ASSERT_EQUALS(as->get_size(), 5);
239 TS_ASSERT_EQUALS(as->get_size(), 4);
240240
241241 // --------------------------------------
242242 // Do it again, but more deeply.
……@@ -251,7 +251,7 @@ void BasicDeleteUTest::test_recursive(void)
251251 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
252252 store->load_atomspace();
253253 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
254 TS_ASSERT_EQUALS(as->get_size(), 9);
254 TS_ASSERT_EQUALS(as->get_size(), 8);
255255
256256 store->remove_atom(as.get(), ha, true);
257257 store->setValue(as->add_node(PREDICATE_NODE, "*-close-*"), createVoidValue());
……@@ -259,7 +259,7 @@ void BasicDeleteUTest::test_recursive(void)
259259 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
260260 store->load_atomspace();
261261 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
262 TS_ASSERT_EQUALS(as->get_size(), 5);
262 TS_ASSERT_EQUALS(as->get_size(), 4);
263263
264264 // --------------------------------------
265265 store->erase();
……@@ -348,10 +348,10 @@ void BasicDeleteUTest::test_key_deletion(void)
348348 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
349349 TS_ASSERT(store->connected())
350350
351 // We expect 8 atoms (+1 for *-IsKeyFlag-*, +1 for *-open-*)
351 // We expect 7 atoms (+1 for *-IsKeyFlag-*, +1 for *-open-*)
352352 printf("Loading the atomspace ...\n");
353353 store->load_atomspace();
354 TS_ASSERT_EQUALS(as->get_size(), 8);
354 TS_ASSERT_EQUALS(as->get_size(), 7);
355355 printf("AtomSpace contents=\n%s\n", as->to_string().c_str());
356356
357357 // Verify that there are only three keys
……@@ -443,9 +443,9 @@ void BasicDeleteUTest::test_key_corruption(void)
443443 for (const Handle& h: hset)
444444 printf("Atomspace contains h=%s\n", h->to_short_string().c_str());
445445
446 // Size is 7 because (Concept "x") cannot be deleted.
446 // Size is 6 because (Concept "x") cannot be deleted.
447447 // +1 for *-IsKeyFlag-*, +1 for *-open-*
448 TS_ASSERT_EQUALS(as->get_size(), 7);
448 TS_ASSERT_EQUALS(as->get_size(), 6);
449449
450450 hb = as->add_node(CONCEPT_NODE, "b");
451451 hx = as->add_node(CONCEPT_NODE, "x");
……@@ -459,19 +459,19 @@ void BasicDeleteUTest::test_key_corruption(void)
459459 store->barrier();
460460
461461 // +1 for *-IsKeyFlag-*, +1 for *-open-*
462 TS_ASSERT_EQUALS(as->get_size(), 9);
462 TS_ASSERT_EQUALS(as->get_size(), 8);
463463
464464 // Remove the value .. again
465465 store->remove_atom(as.get(), hx);
466466 as->extract_atom(hx);
467467 // +1 for *-IsKeyFlag-*, +1 for *-open-*
468 TS_ASSERT_EQUALS(as->get_size(), 8);
468 TS_ASSERT_EQUALS(as->get_size(), 7);
469469 store->setValue(as->add_node(PREDICATE_NODE, "*-close-*"), createVoidValue());
470470 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
471471 store->load_atomspace();
472 // Size is 10 because (Concept "x") cannot be deleted.
472 // Size is 9 because (Concept "x") cannot be deleted.
473473 // +1 for *-IsKeyFlag-*, +1 for *-open-*, +1 for *-close-*
474 TS_ASSERT_EQUALS(as->get_size(), 10);
474 TS_ASSERT_EQUALS(as->get_size(), 9);
475475
476476 // We are done.
477477 store->setValue(as->add_node(PREDICATE_NODE, "*-close-*"), createVoidValue());
……@@ -489,10 +489,10 @@ void BasicDeleteUTest::test_key_corruption(void)
489489 store->setValue(as->add_node(PREDICATE_NODE, "*-open-*"), createVoidValue());
490490 TS_ASSERT(store->connected())
491491
492 // We expect 9 atoms (+1 for *-IsKeyFlag-*, +1 for *-open-*)
492 // We expect 8 atoms (+1 for *-IsKeyFlag-*, +1 for *-open-*)
493493 printf("Loading the atomspace ...\n");
494494 store->load_atomspace();
495 TS_ASSERT_EQUALS(as->get_size(), 9);
495 TS_ASSERT_EQUALS(as->get_size(), 8);
496496
497497 // Verify that there are two keys
498498 hb = as->add_node(CONCEPT_NODE, "b");
tests/persist/rocks/FetchUTest.cxxtest +4 -2
……@@ -215,11 +215,13 @@ void FetchUTest::test_stuff(void)
215215 printf("Expecting %s\n", etv->to_string().c_str());
216216 printf("Got %s\n", tv->to_string().c_str());
217217
218 // BBB should have been clobbered.
218 // BBB should retain its original value (TVs persist in storage).
219219 eval->eval(R"((fetch-atom (Concept "BBB")))");
220220 eval->eval("(barrier)");
221221 tv = eval->eval_v(R"((cog-value (Concept "BBB") tvkey))");
222 TS_ASSERT(tv == nullptr);
222 etv = createFloatValue(std::vector<double>({0.2, 0.22}));
223 TS_ASSERT(tv != nullptr);
224 TS_ASSERT((*tv) == (*etv));
223225
224226 eval->eval("(cog-close)");
225227 logger().debug("END TEST: %s", __FUNCTION__);
tests/persist/rocks/space-episodic-test.scm +4 -4
……@@ -99,13 +99,13 @@
9999 (count-all (cog-value (ConceptNode "foo") (Predicate "real life")))
100100 (count-all (cog-value (ConceptNode "foo") (Predicate "repressed mem"))))
101101
102; 11 loaded plus one RocksStorageNode plus (Predicate "*-TruthValueKey-*")
103; Plus two more: (Predicate "*-store-atomspace-*")
102; 11 loaded plus one RocksStorageNode
103; Plus: (Predicate "*-store-atomspace-*")
104104; and (Predicate "*-load-atomspace-*") and *-open-* and *-close-*
105105; and (Predicate "kayfabe") from test-utils.
106106; +1 for (Predicate "*-IsKeyFlag-*")
107107
108(test-assert "base-count" (equal? 18 (count-all)))
108(test-assert "base-count" (equal? 17 (count-all)))
109109(test-assert "space1-count" (equal? 0
110110 (count-all (cog-value (ConceptNode "foo") (Predicate "real life")))))
111111(test-assert "space2-count" (equal? 0
……@@ -117,7 +117,7 @@
117117(cog-set-value! gsn (*-close-*))
118118
119119; +1 for (Predicate "*-IsKeyFlag-*")
120(test-assert "base-count" (equal? 19 (count-all)))
120(test-assert "base-count" (equal? 18 (count-all)))
121121(test-assert "space1-count" (equal? 8
122122 (count-all (cog-value (ConceptNode "foo") (Predicate "real life")))))
123123(test-assert "space2-count" (equal? 6