Duration to String enhanced with tests

Adds checks for if a bit in a u8 is set or clear
This commit is contained in:
2025-07-23 11:19:22 -04:00
parent 3280123d22
commit 6d51a4d3a6
7 changed files with 133 additions and 42 deletions
-1
View File
@@ -8,7 +8,6 @@ fn read_bin(source: &str) -> Vec<u8> {
fn read_display(source: &str) -> String {
let full_path = format!("/home/tmerritt/Projects/trevors_utilities/resources/data_to_text/{}.display", source);
// println!("FULL PATH DIS: [{}]", full_path);
std::fs::read_to_string(full_path).unwrap()
}
+31 -1
View File
@@ -147,4 +147,34 @@ fn clear_low_bits() {
NumberSystemConversion::clear_low_bits(src),
dst);
}
}
}
#[test]
fn is_bit_set_checks() {
let params = vec![
(0b0000_0001, vec![true, false, false, false, false, false, false, false]),
(0b1111_1111, vec![true, true, true, true, true, true, true, true]),
(0b1010_1010, vec![false, true, false, true, false, true, false, true])
];
for (base, options) in params {
for (index, expected) in options.iter().enumerate() {
assert_eq!(*expected, NumberSystemConversion::is_bit_set(base, index as u8));
}
}
}
#[test]
fn is_bit_clear_checks() {
let params = vec![
(0b0000_0001, vec![false, true, true, true, true, true, true, true]),
(0b1111_1111, vec![false, false, false, false, false, false, false, false]),
(0b1010_1010, vec![true, false, true, false, true, false, true, false])
];
for (base, options) in params {
for (index, expected) in options.iter().enumerate() {
assert_eq!(*expected, NumberSystemConversion::is_bit_clear(base, index as u8));
}
}
}