mirror of
https://relay.ngit.dev/npub15qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exs5cyejr/ngit-grasp.git
synced 2026-10-05 23:18:24 +00:00
test(purgatory): stabilize replacement announcement ordering
This commit is contained in:
@@ -808,6 +808,11 @@ impl PurgatoryTests {
|
||||
.await
|
||||
.map_err(|e| format!("Failed to get purgatory test repo: {}", e))?;
|
||||
|
||||
let existing_announcement = ctx
|
||||
.get_fixture(FixtureKind::PurgatoryValidRepoSent)
|
||||
.await
|
||||
.map_err(|e| format!("Failed to get purgatory announcement fixture: {}", e))?;
|
||||
|
||||
let repo_id = existing_state
|
||||
.tags
|
||||
.iter()
|
||||
@@ -816,6 +821,10 @@ impl PurgatoryTests {
|
||||
.ok_or("Missing d tag in state event")?
|
||||
.to_string();
|
||||
|
||||
// Ensure replacement announcement is strictly newer than the existing
|
||||
// owner announcement for this (pubkey, d) coordinate.
|
||||
let replacement_created_at = Timestamp::from(existing_announcement.created_at.as_secs() + 1);
|
||||
|
||||
// Stage 2: generate a fresh keypair for a new maintainer
|
||||
let new_maintainer_keys = Keys::generate();
|
||||
let new_maintainer_hex = new_maintainer_keys.public_key().to_hex();
|
||||
@@ -850,6 +859,7 @@ impl PurgatoryTests {
|
||||
"maintainers",
|
||||
vec![new_maintainer_hex.clone()],
|
||||
))
|
||||
.custom_time(replacement_created_at)
|
||||
.build(client.keys())
|
||||
.map_err(|e| format!("Failed to build replacement announcement: {}", e))?;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user