uuid-rs/src/v4.rs

31 lines
570 B
Rust
Raw Normal View History

2023-09-04 22:00:00 -04:00
use crate::rng::get_random_bytes;
use crate::{Uuid, Variant, Version};
impl Uuid {
pub fn new_v4() -> Self {
Uuid::new_random()
}
pub fn new_random() -> Self {
let mut bytes = get_random_bytes();
Uuid::set_variant(&mut bytes, Variant::Default);
Uuid::set_version(&mut bytes, Version::Random);
Uuid(bytes)
}
}
#[cfg(test)]
mod tests {
use crate::{Uuid, Variant};
#[test]
fn new_v4__variant() {
let uuid = Uuid::new_v4();
assert_eq!(uuid.get_variant(), Variant::Default);
}
}