Added tests for the added cast functions of matrix and point.
This commit is contained in:
parent
d2d35b808b
commit
c9a9cad256
2 changed files with 35 additions and 1 deletions
|
@ -704,6 +704,33 @@ pub mod matrix4 {
|
||||||
assert_eq!(res, Vector4::new(1., 2., 3., 1.));
|
assert_eq!(res, Vector4::new(1., 2., 3., 1.));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_cast() {
|
||||||
|
assert_ulps_eq!(Matrix2::new(0.2f64, 1.5, 4.7, 2.3).cast(), Matrix2::new(0.2f32, 1.5, 4.7, 2.3));
|
||||||
|
assert_ulps_eq!(Matrix3::new(
|
||||||
|
0.2f64, 1.5, 4.7,
|
||||||
|
2.3, 5.7, 2.1,
|
||||||
|
4.6, 5.2, 6.6,
|
||||||
|
).cast(), Matrix3::new(
|
||||||
|
0.2f32, 1.5, 4.7,
|
||||||
|
2.3, 5.7, 2.1,
|
||||||
|
4.6, 5.2, 6.6,
|
||||||
|
));
|
||||||
|
|
||||||
|
assert_ulps_eq!(Matrix4::new(
|
||||||
|
0.2f64, 1.5, 4.7, 2.5,
|
||||||
|
2.3, 5.7, 2.1, 1.1,
|
||||||
|
4.6, 5.2, 6.6, 0.2,
|
||||||
|
3.2, 1.8, 0.4, 2.9,
|
||||||
|
).cast(), Matrix4::new(
|
||||||
|
0.2f32, 1.5, 4.7, 2.5,
|
||||||
|
2.3, 5.7, 2.1, 1.1,
|
||||||
|
4.6, 5.2, 6.6, 0.2,
|
||||||
|
3.2, 1.8, 0.4, 2.9,
|
||||||
|
));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
mod from {
|
mod from {
|
||||||
use cgmath::*;
|
use cgmath::*;
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
extern crate approx;
|
extern crate approx;
|
||||||
extern crate cgmath;
|
extern crate cgmath;
|
||||||
|
|
||||||
use cgmath::{Point2, Point3};
|
use cgmath::{Point1, Point2, Point3};
|
||||||
|
|
||||||
macro_rules! impl_test_mul {
|
macro_rules! impl_test_mul {
|
||||||
($PointN:ident { $($field:ident),+ }, $s:expr, $v:expr) => (
|
($PointN:ident { $($field:ident),+ }, $s:expr, $v:expr) => (
|
||||||
|
@ -74,3 +74,10 @@ fn test_rem() {
|
||||||
impl_test_rem!(Point3 { x, y, z }, 2.0f32, Point3::new(2.0f32, 4.0, 6.0));
|
impl_test_rem!(Point3 { x, y, z }, 2.0f32, Point3::new(2.0f32, 4.0, 6.0));
|
||||||
impl_test_rem!(Point2 { x, y }, 2.0f32, Point2::new(2.0f32, 4.0));
|
impl_test_rem!(Point2 { x, y }, 2.0f32, Point2::new(2.0f32, 4.0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_cast() {
|
||||||
|
assert_ulps_eq!(Point1::new(0.9f64).cast(), Point1::new(0.9f32));
|
||||||
|
assert_ulps_eq!(Point2::new(0.9f64, 1.5).cast(), Point2::new(0.9f32, 1.5));
|
||||||
|
assert_ulps_eq!(Point3::new(1.0f64, 2.4, -3.13).cast(), Point3::new(1.0f32, 2.4, -3.13));
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue