lib

Core libraries for Radroots
git clone https://radroots.dev/git/lib.git
Log | Files | Refs | README | LICENSE

relay_set.rs (1126B)


      1 use radroots_local_events::{
      2     CANONICAL_RELAY_SET_FINGERPRINT_VERSION, canonical_relay_set_fingerprint,
      3 };
      4 
      5 #[test]
      6 fn relay_set_fingerprint_trims_sorts_and_dedupes() {
      7     let first = canonical_relay_set_fingerprint([
      8         " wss://relay-b.example ",
      9         "wss://relay-a.example",
     10         "wss://relay-b.example",
     11     ])
     12     .expect("fingerprint");
     13     let second =
     14         canonical_relay_set_fingerprint(["wss://relay-a.example", "wss://relay-b.example"])
     15             .expect("fingerprint");
     16 
     17     assert_eq!(first, second);
     18     assert!(first.starts_with(CANONICAL_RELAY_SET_FINGERPRINT_VERSION));
     19 }
     20 
     21 #[test]
     22 fn relay_set_fingerprint_rejects_empty_entries() {
     23     let fingerprint = canonical_relay_set_fingerprint([" ", "", "\t"]);
     24 
     25     assert_eq!(fingerprint, None);
     26 }
     27 
     28 #[test]
     29 fn relay_set_fingerprint_changes_when_relay_set_changes() {
     30     let first = canonical_relay_set_fingerprint(["wss://relay-a.example"]).expect("fingerprint");
     31     let second =
     32         canonical_relay_set_fingerprint(["wss://relay-a.example", "wss://relay-b.example"])
     33             .expect("fingerprint");
     34 
     35     assert_ne!(first, second);
     36 }