upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/grasp-audit/src/specs/grasp01/event_acceptance_policy.rs
diff options
context:
space:
mode:
authorDanConwayDev <DanConwayDev@protonmail.com>2025-12-01 14:31:32 +0000
committerDanConwayDev <DanConwayDev@protonmail.com>2025-12-01 15:22:38 +0000
commitd2ac69816567f092fe0d4661723bc43778cb481b (patch)
treee8b51b61a6a7b0ab1a214adebe4e237143b01f0b /grasp-audit/src/specs/grasp01/event_acceptance_policy.rs
parent7a78815e29b01c83f3d0ec195ba717a2eba8cd37 (diff)
fix cargo clippy and fmt warnings
Diffstat (limited to 'grasp-audit/src/specs/grasp01/event_acceptance_policy.rs')
-rw-r--r--grasp-audit/src/specs/grasp01/event_acceptance_policy.rs62
1 files changed, 23 insertions, 39 deletions
diff --git a/grasp-audit/src/specs/grasp01/event_acceptance_policy.rs b/grasp-audit/src/specs/grasp01/event_acceptance_policy.rs
index 3a8f18d..1fc7f73 100644
--- a/grasp-audit/src/specs/grasp01/event_acceptance_policy.rs
+++ b/grasp-audit/src/specs/grasp01/event_acceptance_policy.rs
@@ -247,7 +247,9 @@ impl EventAcceptancePolicyTests {
247 /// 247 ///
248 /// Spec: Line 5 of ../grasp/01.md 248 /// Spec: Line 5 of ../grasp/01.md
249 /// Requirement: MUST reject announcements not listing service (unless GRASP-05) 249 /// Requirement: MUST reject announcements not listing service (unless GRASP-05)
250 pub async fn test_reject_repo_announcement_missing_clone_tag(client: &AuditClient) -> TestResult { 250 pub async fn test_reject_repo_announcement_missing_clone_tag(
251 client: &AuditClient,
252 ) -> TestResult {
251 TestResult::new( 253 TestResult::new(
252 "reject_repo_announcement_missing_clone_tag", 254 "reject_repo_announcement_missing_clone_tag",
253 "GRASP-01:nostr-relay:5", 255 "GRASP-01:nostr-relay:5",
@@ -321,7 +323,9 @@ impl EventAcceptancePolicyTests {
321 /// 323 ///
322 /// Spec: Line 5 of ../grasp/01.md 324 /// Spec: Line 5 of ../grasp/01.md
323 /// Requirement: MUST reject announcements not listing service in relays 325 /// Requirement: MUST reject announcements not listing service in relays
324 pub async fn test_reject_repo_announcement_missing_relays_tag(client: &AuditClient) -> TestResult { 326 pub async fn test_reject_repo_announcement_missing_relays_tag(
327 client: &AuditClient,
328 ) -> TestResult {
325 TestResult::new( 329 TestResult::new(
326 "reject_repo_announcement_missing_relays_tag", 330 "reject_repo_announcement_missing_relays_tag",
327 "GRASP-01:nostr-relay:5", 331 "GRASP-01:nostr-relay:5",
@@ -546,8 +550,7 @@ impl EventAcceptancePolicyTests {
546 let issue = Self::create_issue_for_repo(client, &repo, "Test Issue 1")?; 550 let issue = Self::create_issue_for_repo(client, &repo, "Test Issue 1")?;
547 551
548 // 3. Send issue and verify it's accepted 552 // 3. Send issue and verify it's accepted
549 send_and_verify_accepted(client, issue, "issue referencing repo via 'a' tag") 553 send_and_verify_accepted(client, issue, "issue referencing repo via 'a' tag").await?;
550 .await?;
551 554
552 Ok(()) 555 Ok(())
553 }) 556 })
@@ -693,8 +696,7 @@ impl EventAcceptancePolicyTests {
693 .map_err(|e| format!("Failed to build issue B: {}", e))?; 696 .map_err(|e| format!("Failed to build issue B: {}", e))?;
694 697
695 // Send Issue B and verify it's ACCEPTED (via transitive quote to Issue A) 698 // Send Issue B and verify it's ACCEPTED (via transitive quote to Issue A)
696 send_and_verify_accepted(client, issue_b, "issue B quoting accepted issue A") 699 send_and_verify_accepted(client, issue_b, "issue B quoting accepted issue A").await?;
697 .await?;
698 700
699 Ok(()) 701 Ok(())
700 }) 702 })
@@ -772,8 +774,7 @@ impl EventAcceptancePolicyTests {
772 .build(client.keys()) 774 .build(client.keys())
773 .map_err(|e| format!("Failed to build kind1 A: {}", e))?; 775 .map_err(|e| format!("Failed to build kind1 A: {}", e))?;
774 776
775 send_and_verify_accepted(client, kind1_a.clone(), "kind 1 A quoting repo") 777 send_and_verify_accepted(client, kind1_a.clone(), "kind 1 A quoting repo").await?;
776 .await?;
777 778
778 // Create Kind 1 B that replies to Kind 1 A via 'e' tag 779 // Create Kind 1 B that replies to Kind 1 A via 'e' tag
779 let kind1_b = client 780 let kind1_b = client
@@ -783,12 +784,8 @@ impl EventAcceptancePolicyTests {
783 .map_err(|e| format!("Failed to build kind1 B: {}", e))?; 784 .map_err(|e| format!("Failed to build kind1 B: {}", e))?;
784 785
785 // Send Kind 1 B and verify it's accepted (via 'e' tag to accepted kind 1 A) 786 // Send Kind 1 B and verify it's accepted (via 'e' tag to accepted kind 1 A)
786 send_and_verify_accepted( 787 send_and_verify_accepted(client, kind1_b, "kind 1 B replying to accepted kind 1 A")
787 client, 788 .await?;
788 kind1_b,
789 "kind 1 B replying to accepted kind 1 A",
790 )
791 .await?;
792 789
793 Ok(()) 790 Ok(())
794 }) 791 })
@@ -828,17 +825,19 @@ impl EventAcceptancePolicyTests {
828 .kind(Kind::GitRepoAnnouncement) 825 .kind(Kind::GitRepoAnnouncement)
829 .author(repo.pubkey) 826 .author(repo.pubkey)
830 .identifier(repo_id); 827 .identifier(repo_id);
831 828
832 // Poll until repo is available (with timeout) 829 // Poll until repo is available (with timeout)
833 for _ in 0..10 { 830 for _ in 0..10 {
834 let events = client.query(verify_filter.clone()).await 831 let events = client
832 .query(verify_filter.clone())
833 .await
835 .map_err(|e| format!("Failed to verify repo: {}", e))?; 834 .map_err(|e| format!("Failed to verify repo: {}", e))?;
836 if !events.is_empty() { 835 if !events.is_empty() {
837 break; 836 break;
838 } 837 }
839 tokio::time::sleep(Duration::from_millis(50)).await; 838 tokio::time::sleep(Duration::from_millis(50)).await;
840 } 839 }
841 840
842 // Extra delay to ensure relay's internal database is fully synchronized 841 // Extra delay to ensure relay's internal database is fully synchronized
843 tokio::time::sleep(Duration::from_millis(200)).await; 842 tokio::time::sleep(Duration::from_millis(200)).await;
844 843
@@ -907,12 +906,7 @@ impl EventAcceptancePolicyTests {
907 let issue = ctx 906 let issue = ctx
908 .get_fixture(FixtureKind::RepoWithIssue) 907 .get_fixture(FixtureKind::RepoWithIssue)
909 .await 908 .await
910 .map_err(|e| { 909 .map_err(|e| format!("Test setup failed: could not get issue fixture: {}", e))?;
911 format!(
912 "Test setup failed: could not get issue fixture: {}",
913 e
914 )
915 })?;
916 910
917 // Create Comment A locally but DON'T send it yet 911 // Create Comment A locally but DON'T send it yet
918 let comment_a = Self::create_comment_for_event(client, &issue, "Comment A")?; 912 let comment_a = Self::create_comment_for_event(client, &issue, "Comment A")?;
@@ -997,16 +991,11 @@ impl EventAcceptancePolicyTests {
997 .build(client.keys()) 991 .build(client.keys())
998 .map_err(|e| format!("Failed to build kind1 B: {}", e))?; 992 .map_err(|e| format!("Failed to build kind1 B: {}", e))?;
999 993
1000 send_and_verify_accepted(client, kind1_b, "kind1 B mentioning unsent kind1 A") 994 send_and_verify_accepted(client, kind1_b, "kind1 B mentioning unsent kind1 A").await?;
1001 .await?;
1002 995
1003 // NOW send Kind 1 A - should be accepted because accepted Kind 1 B mentions it 996 // NOW send Kind 1 A - should be accepted because accepted Kind 1 B mentions it
1004 send_and_verify_accepted( 997 send_and_verify_accepted(client, kind1_a, "kind1 A referenced by accepted kind1 B")
1005 client, 998 .await?;
1006 kind1_a,
1007 "kind1 A referenced by accepted kind1 B",
1008 )
1009 .await?;
1010 999
1011 Ok(()) 1000 Ok(())
1012 }) 1001 })
@@ -1033,12 +1022,8 @@ impl EventAcceptancePolicyTests {
1033 Self::create_issue_for_repo(client, &unaccepted_repo, "Orphan Issue")?; 1022 Self::create_issue_for_repo(client, &unaccepted_repo, "Orphan Issue")?;
1034 1023
1035 // 3. Send issue and verify it's REJECTED 1024 // 3. Send issue and verify it's REJECTED
1036 send_and_verify_rejected( 1025 send_and_verify_rejected(client, orphan_issue, "issue referencing unaccepted repo")
1037 client, 1026 .await?;
1038 orphan_issue,
1039 "issue referencing unaccepted repo",
1040 )
1041 .await?;
1042 1027
1043 Ok(()) 1028 Ok(())
1044 }) 1029 })
@@ -1060,8 +1045,7 @@ impl EventAcceptancePolicyTests {
1060 .map_err(|e| format!("Failed to build note: {}", e))?; 1045 .map_err(|e| format!("Failed to build note: {}", e))?;
1061 1046
1062 // 2. Send note and verify it's REJECTED 1047 // 2. Send note and verify it's REJECTED
1063 send_and_verify_rejected(client, orphan_note, "kind 1 with no repo references") 1048 send_and_verify_rejected(client, orphan_note, "kind 1 with no repo references").await?;
1064 .await?;
1065 1049
1066 Ok(()) 1050 Ok(())
1067 }) 1051 })