Geom: square_to_quad tests live in the crate's own test module

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
bflatastic
2026-10-29 10:22:02 +07:00
co-authored by Claude Opus 5.5
parent 7bbdfb41f6
commit 3311f02559
2 changed files with 13 additions and 13 deletions
+13
View File
@@ -449,6 +449,19 @@ pub fn look_at(pos: Vec3, poi: Vec3, extra: Mat4) -> Mat4 {
mod tests {
use super::*;
/// A quad with three collinear corners has no projective map: identity, not NaN.
#[test]
fn square_to_quad_degenerate_is_finite() {
let m = Mat3::square_to_quad([vec2(0.0, 5.0), vec2(0.0, 0.0), vec2(10.0, 0.0), vec2(20.0, 0.0)]);
assert!(m.0.iter().flatten().all(|v| v.is_finite()), "non-finite: {m:?}");
}
#[test]
fn square_to_quad_regular_is_finite() {
let m = Mat3::square_to_quad([vec2(0.0, 0.0), vec2(10.0, 0.0), vec2(8.0, 6.0), vec2(0.0, 5.0)]);
assert!(m.0.iter().flatten().all(|v| v.is_finite()));
}
fn close(a: Vec2, b: Vec2) -> bool {
(a - b).length() < 1e-9
}
-13
View File
@@ -1,13 +0,0 @@
use effectcraft_geom::{Mat3, vec2};
#[test]
fn square_to_quad_degenerate_is_finite() {
let m = Mat3::square_to_quad([vec2(0.0, 5.0), vec2(0.0, 0.0), vec2(10.0, 0.0), vec2(20.0, 0.0)]);
assert!(m.0.iter().flatten().all(|v| v.is_finite()), "non-finite: {m:?}");
}
#[test]
fn square_to_quad_regular_is_finite() {
let m = Mat3::square_to_quad([vec2(0.0, 0.0), vec2(10.0, 0.0), vec2(8.0, 6.0), vec2(0.0, 5.0)]);
assert!(m.0.iter().flatten().all(|v| v.is_finite()));
}