svoid test_uniqCI() { // try old & new mode for (bool collectForwardRefs : ll(true, false)) { new Concepts cc; cc.collectForwardRefs = collectForwardRefs; Concept a = cnew(cc, Concept); Concept b = uniqCI(cc, Concept, myRef := a); assertSameVerbose(cc, a.concepts()); assertSameVerbose(cc, b.concepts()); assertEqualsVerbose(a, cget(b, "myRef")); assertEqualsVerbose("refs field", collectForwardRefs, b._rawRefsField() != null); assertEqualsVerbose("num refs", 1, l(b._refs())); assertEqualsVerbose("num back refs", 1, l(a.backRefs)); assertEquals(ll(b), findBackRefs(a)); } }