Added tests for the implementations
This commit is contained in:
parent
2031e99d77
commit
d8b51f180a
@ -1,4 +1,4 @@
|
||||
use core::num::{IntErrorKind, NonZeroI32, NonZeroI8, NonZeroU32, NonZeroU8};
|
||||
use core::num::{TryFromIntError, IntErrorKind, NonZeroI32, NonZeroI8, NonZeroU32, NonZeroU8};
|
||||
use core::option::Option::{self, None, Some};
|
||||
use std::mem::size_of;
|
||||
|
||||
@ -176,3 +176,21 @@ fn test_nonzero_bitor_assign() {
|
||||
target |= 0;
|
||||
assert_eq!(target.get(), 0b1011_1111);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_nonzero_from_int_on_success() {
|
||||
assert_eq!(NonZeroU8::try_from(5), Ok(NonZeroU8::new(5)));
|
||||
assert_eq!(NonZeroU32::try_from(5), Ok(NonZeroU32::new(5)));
|
||||
|
||||
assert_eq!(NonZeroI8::try_from(-5), Ok(NonZeroI8::new(-5)));
|
||||
assert_eq!(NonZeroI32::try_from(-5), Ok(NonZeroI32::new(-5)));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_nonzero_from_int_on_err() {
|
||||
assert_eq!(NonZeroU8::try_from(0), Err(TryFromIntError(())));
|
||||
assert_eq!(NonZeroU32::try_from(0), Err(TryFromIntError(())));
|
||||
|
||||
assert_eq!(NonZeroI8::try_from(0), Err(TryFromIntError(())));
|
||||
assert_eq!(NonZeroI32::try_from(0), Err(TryFromIntError(())));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user