aboutsummaryrefslogtreecommitdiffstats
path: root/src/swarm
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-10-31 19:03:15 +0100
committertv <tv@krebsco.de>2026-10-31 19:03:15 +0100
commite4f801db5d150fb1bf5540d9ba00f491a6129a5c (patch)
tree38a8b5ffd8233df7d24f9bb5effac58cbd92187e /src/swarm
parent4a6403d0242cf730a3f864c8d26e0ba15a98fcf0 (diff)
tests write through document::testing helpers
Diffstat (limited to 'src/swarm')
-rw-r--r--src/swarm/members.rs17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/swarm/members.rs b/src/swarm/members.rs
index 0e27681..8d7f909 100644
--- a/src/swarm/members.rs
+++ b/src/swarm/members.rs
@@ -324,6 +324,7 @@ pub(crate) fn unregister(doc: &mut Document, pk: &str) -> Result<(), StoreError>
#[cfg(test)]
mod tests {
use super::*;
+ use crate::document::testing::change;
#[test]
fn electorate_by_alive_stamp() {
@@ -336,9 +337,11 @@ mod tests {
("new", json!({ "since": now - day })),
("old", json!({ "since": 1 })),
];
- for (pk, entry) in entries {
- store::write_path(&mut doc, &member_path(pk), &entry).unwrap();
- }
+ change(&mut doc, |doc| {
+ for (pk, entry) in entries {
+ store::write_path(doc, &member_path(pk), &entry).unwrap();
+ }
+ });
assert_eq!(
electorate(&doc, now, Duration::from_secs(7 * 24 * 3600)),
["fresh", "new"]
@@ -350,9 +353,13 @@ mod tests {
let mut doc = Document::new();
assert!(relays(&doc).is_empty());
let relay = "libp2p:/ip6/fd00::1/tcp/9661";
- store::write_path(&mut doc, &meta::path(&[meta::RELAYS]), &json!([relay, 7])).unwrap();
+ change(&mut doc, |doc| {
+ store::write_path(doc, &meta::path(&[meta::RELAYS]), &json!([relay, 7])).unwrap()
+ });
assert_eq!(relays(&doc), [relay]); // Anything but text is ignored.
- store::write_path(&mut doc, &meta::path(&[meta::RELAYS]), &json!(relay)).unwrap();
+ change(&mut doc, |doc| {
+ store::write_path(doc, &meta::path(&[meta::RELAYS]), &json!(relay)).unwrap()
+ });
assert!(relays(&doc).is_empty()); // Not a list.
}