#[cfg(test)]
mod tests {
use crate::*;
#[test]
fn test_clock_backwards() {
let generator = SnowID::new(1).unwrap();
let snowid1 = generator.generate();
let snowid2 = generator.generate();
assert!(snowid2 > snowid1, "Second SnowID should be greater than first");
let (ts1, _, seq1) = generator.extract.decompose(snowid1);
let (ts2, _, seq2) = generator.extract.decompose(snowid2);
if ts1 == ts2 {
assert!(seq2 > seq1, "Sequence should increment when timestamp is same");
} else {
assert!(ts2 >= ts1, "Timestamp should not go backwards: ts1={}, ts2={}", ts1, ts2);
}
}
}