Skip to main content

object_rainbow_amt_set/
lib.rs

1pub use object_rainbow_hamt::HamtSet as AmtSet;
2
3#[cfg(test)]
4mod test {
5    use macro_rules_attribute::apply;
6    use object_rainbow::ToOutput;
7    use smol_macros::test;
8
9    use crate::AmtSet;
10
11    #[apply(test!)]
12    async fn test() -> object_rainbow::Result<()> {
13        let mut set = AmtSet::default();
14        assert!(set.insert(1u8.data_hash()).await?);
15        assert!(set.contains(1u8.data_hash()).await?);
16        assert!(!set.insert(1u8.data_hash()).await?);
17        assert!(set.contains(1u8.data_hash()).await?);
18        assert!(set.insert(2u8.data_hash()).await?);
19        assert!(set.contains(1u8.data_hash()).await?);
20        assert!(set.contains(2u8.data_hash()).await?);
21        assert!(!set.insert(2u8.data_hash()).await?);
22        assert!(set.contains(1u8.data_hash()).await?);
23        assert!(set.contains(2u8.data_hash()).await?);
24        Ok(())
25    }
26}