@Test
	public void testValueDelete() {
		try (Transaction tx = b.startTransaction()) {
			TraceObjectValue rootVal =
				manager.createRootObject(ctx.getSchema(new SchemaName("Session")));
			root = rootVal.getChild();

			try {
				rootVal.delete();
				fail();
			}
			catch (IllegalArgumentException e) {
				// pass
			}

			TraceObjectValue val = root.setValue(Lifespan.ALL, "myValue", 1234);
			assertFalse(val.isDeleted());
			assertEquals(val, root.getValue(0, "myValue"));

			val.delete();
			assertTrue(val.isDeleted());
			assertNull(root.getValue(0, "myValue"));
		}
	}
Fails because you cannot create a second root object.
Ghidra/Debug/Framework-TraceModeling/src/test/java/ghidra/trace/database/target/DBTraceObjectManagerTest.java