tangle


git clone https://radroots.dev/git/tangle.git
Log | Files | Refs | README | LICENSE

commit 05d6103a019e529deeb64f6a5b2ff5afa4fb93c6
parent f0121ffe789a07fa699c30d17f872866b992f0cc
Author: triesap <tyson@radroots.org>
Date:   Sun, 14 Jun 2026 15:47:08 -0700

tests: prove pocket boundary operations

Diffstat:
Mcrates/tangle_store_pocket/src/lib.rs | 45+++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+), 0 deletions(-)

diff --git a/crates/tangle_store_pocket/src/lib.rs b/crates/tangle_store_pocket/src/lib.rs @@ -742,6 +742,51 @@ mod tests { } #[test] + fn pocket_store_handle_syncs_written_events_and_extra_records() { + let root = temp_root("tangle-pocket-sync"); + let config = PocketStoreConfig::new( + root.join("pocket"), + 1024 * 1024 * 1024, + 128, + PocketSyncPolicy::FlushOnShutdown, + ) + .expect("config"); + let handle = PocketStoreHandle::open(&config).expect("open"); + let event = + parse_pocket_event_json(event_json_with("d", "4", "synced").as_bytes()).expect("event"); + + let offset = handle.store_event(&event).expect("store"); + handle + .put_extra_record( + TANGLE_GROUP_CHECKPOINT_TABLE, + b"checkpoint\0sync", + b"synced", + ) + .expect("checkpoint"); + handle.sync().expect("sync"); + drop(handle); + + let reopened = PocketStoreHandle::open(&config).expect("reopen"); + let by_id = reopened + .event_by_id(event.id()) + .expect("lookup") + .expect("event"); + let by_offset = reopened.event_by_offset(offset).expect("offset"); + + assert_eq!(by_id.id(), event.id()); + assert_eq!(by_offset.id(), event.id()); + assert_eq!( + reopened + .get_extra_record(TANGLE_GROUP_CHECKPOINT_TABLE, b"checkpoint\0sync") + .expect("checkpoint"), + Some(b"synced".to_vec()) + ); + + drop(reopened); + let _ = std::fs::remove_dir_all(root); + } + + #[test] fn pocket_store_config_preserves_explicit_storage_boundary() { let config = PocketStoreConfig::new( "runtime/radroots/tangle/pocket",