Cleanup integration tests.
This commit is contained in:
parent
395dff34ee
commit
cc3ac349b4
43
tests/cgmath.rs
Normal file
43
tests/cgmath.rs
Normal file
@ -0,0 +1,43 @@
|
||||
#![cfg(feature = "cgmath")]
|
||||
|
||||
use cgmath as cg;
|
||||
use splines::{Interpolation, Key, Spline};
|
||||
|
||||
#[test]
|
||||
fn cgmath_vector_interpolation() {
|
||||
use splines::Interpolate;
|
||||
|
||||
let start = cg::Vector2::new(0.0, 0.0);
|
||||
let mid = cg::Vector2::new(0.5, 0.5);
|
||||
let end = cg::Vector2::new(1.0, 1.0);
|
||||
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.0), start);
|
||||
assert_eq!(Interpolate::lerp(start, end, 1.0), end);
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.5), mid);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn stroke_bezier_straight() {
|
||||
use float_cmp::approx_eq;
|
||||
|
||||
let keys = vec![
|
||||
Key::new(
|
||||
0.0,
|
||||
cg::Vector2::new(0., 1.),
|
||||
Interpolation::StrokeBezier(cg::Vector2::new(0., 1.), cg::Vector2::new(0., 1.)),
|
||||
),
|
||||
Key::new(
|
||||
5.0,
|
||||
cg::Vector2::new(5., 1.),
|
||||
Interpolation::StrokeBezier(cg::Vector2::new(5., 1.), cg::Vector2::new(5., 1.)),
|
||||
),
|
||||
];
|
||||
let spline = Spline::from_vec(keys);
|
||||
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(0.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(1.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(2.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(3.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(4.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(5.0).unwrap().y, 1.));
|
||||
}
|
@ -1,10 +1,5 @@
|
||||
use splines::{spline::SampledWithKey, Interpolation, Key, Spline};
|
||||
|
||||
#[cfg(feature = "cgmath")]
|
||||
use cgmath as cg;
|
||||
#[cfg(feature = "nalgebra")]
|
||||
use nalgebra as na;
|
||||
|
||||
#[test]
|
||||
fn step_interpolation_f32() {
|
||||
let start = Key::new(0., 0., Interpolation::Step(0.));
|
||||
@ -163,61 +158,6 @@ fn several_interpolations_several_keys() {
|
||||
assert_eq!(spline.clamped_sample(11.), Some(4.));
|
||||
}
|
||||
|
||||
#[cfg(feature = "cgmath")]
|
||||
#[test]
|
||||
fn stroke_bezier_straight() {
|
||||
use float_cmp::approx_eq;
|
||||
|
||||
let keys = vec![
|
||||
Key::new(
|
||||
0.0,
|
||||
cg::Vector2::new(0., 1.),
|
||||
Interpolation::StrokeBezier(cg::Vector2::new(0., 1.), cg::Vector2::new(0., 1.)),
|
||||
),
|
||||
Key::new(
|
||||
5.0,
|
||||
cg::Vector2::new(5., 1.),
|
||||
Interpolation::StrokeBezier(cg::Vector2::new(5., 1.), cg::Vector2::new(5., 1.)),
|
||||
),
|
||||
];
|
||||
let spline = Spline::from_vec(keys);
|
||||
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(0.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(1.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(2.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(3.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(4.0).unwrap().y, 1.));
|
||||
assert!(approx_eq!(f32, spline.clamped_sample(5.0).unwrap().y, 1.));
|
||||
}
|
||||
|
||||
#[cfg(feature = "cgmath")]
|
||||
#[test]
|
||||
fn cgmath_vector_interpolation() {
|
||||
use splines::Interpolate;
|
||||
|
||||
let start = cg::Vector2::new(0.0, 0.0);
|
||||
let mid = cg::Vector2::new(0.5, 0.5);
|
||||
let end = cg::Vector2::new(1.0, 1.0);
|
||||
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.0), start);
|
||||
assert_eq!(Interpolate::lerp(start, end, 1.0), end);
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.5), mid);
|
||||
}
|
||||
|
||||
#[cfg(feature = "nalgebra")]
|
||||
#[test]
|
||||
fn nalgebra_vector_interpolation() {
|
||||
use splines::Interpolate;
|
||||
|
||||
let start = na::Vector2::new(0.0, 0.0);
|
||||
let mid = na::Vector2::new(0.5, 0.5);
|
||||
let end = na::Vector2::new(1.0, 1.0);
|
||||
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.0), start);
|
||||
assert_eq!(Interpolate::lerp(start, end, 1.0), end);
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.5), mid);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn add_key_empty() {
|
||||
let mut spline: Spline<f32, f32> = Spline::from_vec(vec![]);
|
16
tests/nalgebra.rs
Normal file
16
tests/nalgebra.rs
Normal file
@ -0,0 +1,16 @@
|
||||
#![cfg(feature = "nalgebra")]
|
||||
|
||||
use nalgebra as na;
|
||||
|
||||
#[test]
|
||||
fn nalgebra_vector_interpolation() {
|
||||
use splines::Interpolate;
|
||||
|
||||
let start = na::Vector2::new(0.0, 0.0);
|
||||
let mid = na::Vector2::new(0.5, 0.5);
|
||||
let end = na::Vector2::new(1.0, 1.0);
|
||||
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.0), start);
|
||||
assert_eq!(Interpolate::lerp(start, end, 1.0), end);
|
||||
assert_eq!(Interpolate::lerp(start, end, 0.5), mid);
|
||||
}
|
Loading…
Reference in New Issue
Block a user