28 lines
543 B
Rust
28 lines
543 B
Rust
use domain::value_objects::Checksum;
|
|
|
|
#[test]
|
|
fn accepts_valid_sha256() {
|
|
let hex = "a".repeat(64);
|
|
assert!(Checksum::new(&hex).is_ok());
|
|
}
|
|
|
|
#[test]
|
|
fn rejects_short() {
|
|
let hex = "a".repeat(63);
|
|
assert!(Checksum::new(&hex).is_err());
|
|
}
|
|
|
|
#[test]
|
|
fn rejects_non_hex() {
|
|
let mut hex = "a".repeat(63);
|
|
hex.push('g');
|
|
assert!(Checksum::new(&hex).is_err());
|
|
}
|
|
|
|
#[test]
|
|
fn normalizes_to_lowercase() {
|
|
let hex = "A".repeat(64);
|
|
let cs = Checksum::new(&hex).unwrap();
|
|
assert_eq!(cs.as_str(), "a".repeat(64));
|
|
}
|