diff options
| author | DanConwayDev <DanConwayDev@protonmail.com> | 2025-12-10 16:13:51 +0000 |
|---|---|---|
| committer | DanConwayDev <DanConwayDev@protonmail.com> | 2025-12-10 16:13:51 +0000 |
| commit | d08878d0b9a8738e57e457a916677d2061775cbd (patch) | |
| tree | 7bbb4a185304615e4cc587cd23052de7a7cfea3a /tests/sync.rs | |
| parent | 8148c27a1350189046bc8e215f29f918dd8747f5 (diff) | |
Phase 5: Migrate bootstrap and discovery tests
Create organized test structure for proactive sync:
tests/common/sync_helpers.rs (from Phase 4):
- TestClient with retry logic for connect/send
- Event builders: build_layer2_issue_event, build_layer3_comment_event
- Tag variants (a/A/q for Layer 2, e/E/q for Layer 3)
- wait_for_event_on_relay() assertion helper
- repo_coord() utility function
- Unit tests for all builders
tests/sync/mod.rs:
- Module organization for sync tests
- Documentation of test categories
tests/sync.rs:
- Main test harness including common and sync modules
tests/sync/bootstrap.rs:
- test_bootstrap_syncs_existing_layer2_events (Test 1)
- test_relay_replays_events_after_restart (Test 4)
tests/sync/discovery.rs:
- test_discovers_layer3_via_layer2 (Test 2)
- test_layer2_discovery_with_chain (Test 3 - simplified)
All 14 tests pass: cargo test --test sync
Diffstat (limited to 'tests/sync.rs')
| -rw-r--r-- | tests/sync.rs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/sync.rs b/tests/sync.rs new file mode 100644 index 0000000..cedb876 --- /dev/null +++ b/tests/sync.rs | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | //! Proactive Sync Integration Tests | ||
| 2 | //! | ||
| 3 | //! This test file organizes tests for ngit-grasp's proactive sync functionality. | ||
| 4 | //! Tests are grouped into submodules by sync scenario: | ||
| 5 | //! | ||
| 6 | //! - `bootstrap` - Tests for sync from pre-configured bootstrap relay | ||
| 7 | //! - `discovery` - Tests for relay discovery from announcement events | ||
| 8 | //! | ||
| 9 | //! # Running Tests | ||
| 10 | //! | ||
| 11 | //! ```bash | ||
| 12 | //! # Run all sync tests | ||
| 13 | //! cargo test --test sync | ||
| 14 | //! | ||
| 15 | //! # Run with output | ||
| 16 | //! cargo test --test sync -- --nocapture | ||
| 17 | //! | ||
| 18 | //! # Run specific test | ||
| 19 | //! cargo test --test sync test_bootstrap_syncs -- --nocapture | ||
| 20 | //! ``` | ||
| 21 | |||
| 22 | // Include the common test utilities | ||
| 23 | mod common; | ||
| 24 | |||
| 25 | // Include sync test submodules (located in tests/sync/) | ||
| 26 | mod sync { | ||
| 27 | pub mod bootstrap; | ||
| 28 | pub mod discovery; | ||
| 29 | } \ No newline at end of file | ||