3个版本

0.1.2 2024年1月29日
0.1.1 2024年1月29日
0.1.0 2024年1月29日

#6 in #repetition

MIT许可证

8KB
126 行代码(不含注释)

 #[test]
    fn test_next_does_not_repeat_ids() {
        let mut timestamp_seq = TimestampSeq::new();

        // Generate multiple IDs and ensure no repetition.
        let id1 = timestamp_seq.next_id();
        let id2 = timestamp_seq.next_id();
        let id3 = timestamp_seq.next_id();
        let id4 = timestamp_seq.next_id();

        assert_ne!(id1, id2);
        assert_ne!(id2, id3);
        assert_ne!(id3, id4);
        assert_ne!(id1, id4);
        println!("{id1} {id2} {id3} {id4}");
        println!(
            "{:?} {:?} {:?} {:?}",
            into_parts(id1),
            into_parts(id2),
            into_parts(id3),
            into_parts(id4)
        );
    }

lib.rs:

此处代码参考自[AppFlowy-Collab]。 wait_next_millis使时间戳|序列为crdt/increased。

无运行时依赖

功能