#[allow(unused_imports)]
use super::*;
#[test]
fn non_value_checked_unsigned_max() {
type N = NonValueU8<255>;
assert!(N::new(255).is_none()); let x = N::new(254).unwrap();
assert_eq!(x.get(), 254);
assert_eq!(x.0.get(), 1); }
#[test]
fn non_value_checked_signed_min() {
type N = NonValueI8<-128>;
assert!(N::new(-128).is_none()); let x = N::new(-127).unwrap();
assert_eq!(x.get(), -127);
assert_eq!(x.0.get(), 1); }
#[test]
fn non_value_checked_middle() {
type N = NonValueI8<50>;
assert!(N::new(50).is_none()); let x = N::new(49).unwrap();
assert_eq!(x.get(), 49);
assert_eq!(x.0.get(), 3); }
#[test]
fn non_value_checked_edges() {
assert!(NonValueU8::<0>::new(0).is_none());
let x = NonValueU8::<0>::new(1).unwrap();
assert_eq!(x.0.get(), 1);
assert!(NonValueI8::<127>::new(127).is_none());
let x = NonValueI8::<127>::new(-1).unwrap();
assert_eq!(x.0.get(), -128); }
#[test]
fn non_value_lossy_unsigned_max() {
type N = NonValueU8<255>;
assert_eq![N::new_lossy(255).get(), 254]; assert_eq![N::new_lossy(254).get(), 254];
assert_eq![N::new_lossy(0).get(), 0];
assert_eq![N::new_lossy(254).0.get(), 1]; assert_eq![N::new_lossy(255).0.get(), 1]; assert_eq![N::new_lossy(0).0.get(), 255]; }
#[test]
fn non_value_lossy_signed_min() {
type N = NonValueI8<-128>;
assert_eq!(N::new_lossy(-128).get(), -127); assert_eq!(N::new_lossy(-127).get(), -127);
assert_eq!(N::new_lossy(0).get(), 0);
assert_eq!(N::new_lossy(-127).0.get(), 1); assert_eq!(N::new_lossy(-128).0.get(), 1); assert_eq!(N::new_lossy(0).0.get(), -128); }
#[test]
fn non_value_lossy_middle_values() {
type N = NonValueI8<50>;
assert_eq!(N::new_lossy(50).get(), 49); assert_eq!(N::new_lossy(49).get(), 49);
assert_eq!(N::new_lossy(-1).get(), -1);
assert_eq!(N::new_lossy(50).0.get(), 3); assert_eq!(N::new_lossy(49).0.get(), 3); assert_eq!(N::new_lossy(-1).0.get(), -51); }
#[test]
fn non_value_lossy_edges() {
type Zero = NonValueU8<0>;
assert_eq!(Zero::new_lossy(0).get(), 1); assert_eq!(Zero::new_lossy(1).get(), 1);
assert_eq!(Zero::new_lossy(0).0.get(), 1);
type MaxI = NonValueI8<127>;
assert_eq!(MaxI::new_lossy(127).get(), 126); assert_eq!(MaxI::new_lossy(126).get(), 126);
assert_eq!(MaxI::new_lossy(-1).0.get(), -128); }