Skip to content

Commit 77b4a6c

Browse files
committed
Add more tests
Signed-off-by: Nico Burns <nico@nicoburns.com>
1 parent 4891241 commit 77b4a6c

File tree

1 file changed

+41
-3
lines changed

1 file changed

+41
-3
lines changed

src/app_unit.rs

+41-3
Original file line numberDiff line numberDiff line change
@@ -502,13 +502,51 @@ fn serialize() {
502502
assert_eq!(ron::from_str(&serialized), Ok(Au(42)));
503503
}
504504

505+
#[cfg(feature = "num_traits")]
506+
#[test]
507+
fn cast_au_u64() {
508+
let val: Au = Au::new(120);
509+
let cast: Option<u64> = num_traits::NumCast::from(val);
510+
assert_eq!(cast, None)
511+
}
512+
513+
#[cfg(feature = "num_traits")]
514+
#[test]
515+
fn cast_au_i16() {
516+
let val: Au = Au::new(120);
517+
let cast: Option<i16> = num_traits::NumCast::from(val);
518+
assert_eq!(cast, None)
519+
}
520+
521+
#[cfg(feature = "num_traits")]
522+
#[test]
523+
fn cast_au_i64() {
524+
let val: Au = Au::new(120);
525+
let cast: Option<i64> = num_traits::NumCast::from(val);
526+
assert_eq!(cast, Some(2))
527+
}
528+
529+
#[test]
530+
fn cast_au_f32() {
531+
let val: Au = Au::new(120);
532+
let cast: Option<f32> = num_traits::NumCast::from(val);
533+
assert_eq!(cast, Some(2.0))
534+
}
535+
536+
#[cfg(feature = "num_traits")]
537+
#[test]
538+
fn cast_au_f64() {
539+
let val: Au = Au::new(120);
540+
let cast: Option<f64> = num_traits::NumCast::from(val);
541+
assert_eq!(cast, Some(2.0))
542+
}
543+
505544
#[cfg(feature = "num_traits")]
506545
#[test]
507546
fn euclid_cast_au_to_f32() {
508547
use euclid::default::Size2D;
509-
let size_au: Size2D<Au> = Size2D::new(Au::new(20), Au::new(30));
510-
let size_f32_manual: Size2D<f32> =
511-
Size2D::new(Au::new(20).to_f32_px(), Au::new(30).to_f32_px());
548+
let size_au: Size2D<Au> = Size2D::new(Au::new(20 * 60), Au::new(30 * 60));
549+
let size_f32_manual: Size2D<f32> = Size2D::new(20.0, 30.0);
512550
let size_f32_cast: Size2D<f32> = size_au.cast();
513551

514552
assert_eq!(size_f32_manual, size_f32_cast);

0 commit comments

Comments
 (0)