extern crate cgmath;
use cgmath::{Angle, Rad, Deg, rad, deg};
use cgmath::ApproxEq;
#[test]
fn conv() {
let angle: Rad<_> = deg(-5.0f64).into();
let angle: Deg<_> = angle.into();
assert!(angle.approx_eq(°(-5.0f64)));
let angle: Rad<_> = deg(30.0f64).into();
let angle: Deg<_> = angle.into();
assert!(angle.approx_eq(°(30.0f64)));
let angle: Deg<_> = rad(-5.0f64).into();
let angle: Rad<_> = angle.into();
assert!(angle.approx_eq(&rad(-5.0f64)));
let angle: Deg<_> = rad(30.0f64).into();
let angle: Rad<_> = angle.into();
assert!(angle.approx_eq(&rad(30.0f64)));
}
#[test]
fn equiv() {
assert!(Deg::<f32>::full_turn().equiv(&-Deg::<f32>::full_turn()));
assert!(Deg::<f32>::turn_div_2().equiv(&-Deg::<f32>::turn_div_2()));
assert!(Deg::<f32>::turn_div_3().sub_a(Deg::<f32>::full_turn()).equiv(&Deg::<f32>::turn_div_3()));
assert!(Rad::<f32>::full_turn().equiv(&-Rad::<f32>::full_turn()));
assert!(Rad::<f32>::turn_div_2().equiv(&-Rad::<f32>::turn_div_2()));
assert!(Rad::<f32>::turn_div_3().sub_a(Rad::<f32>::full_turn()).equiv(&Rad::<f32>::turn_div_3()));
}