coord: add tests for vec/num/num overload of util::limit
This commit is contained in:
parent
ac19e165ba
commit
14718594c9
@ -42,6 +42,7 @@ main (void)
|
|||||||
tap.expect (x == p.x && y == p.y, "structured bindings extract correct data");
|
tap.expect (x == p.x && y == p.y, "structured bindings extract correct data");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ensure the distance function behaves correctly with non-normal numbers.
|
||||||
{
|
{
|
||||||
util::point3f a { 103, 0, 14 };
|
util::point3f a { 103, 0, 14 };
|
||||||
util::point3f b { 104, INFINITY, 15 };
|
util::point3f b { 104, INFINITY, 15 };
|
||||||
@ -53,6 +54,7 @@ main (void)
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ensure the util::select function behaves as expected
|
||||||
{
|
{
|
||||||
const util::point3f a { -1, 2, 0 };
|
const util::point3f a { -1, 2, 0 };
|
||||||
const util::point3f b { 1, 0, 2 };
|
const util::point3f b { 1, 0, 2 };
|
||||||
@ -64,5 +66,18 @@ main (void)
|
|||||||
tap.expect_eq (select (a > b, a, b), hi, "select with points and max");
|
tap.expect_eq (select (a > b, a, b), hi, "select with points and max");
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// ensure that util::limit resolves to the coord overload. the exact
|
||||||
|
// values are less useful than exercising the compiler/linker.
|
||||||
|
{
|
||||||
|
const util::vector3f val { 0, -1, 2 };
|
||||||
|
const util::vector3f lo { -1, 1, -2 };
|
||||||
|
const util::vector3f hi { 1, 2, 0 };
|
||||||
|
|
||||||
|
tap.expect_eq (limit (val, lo, hi), util::vector3f { 0, 1, 0 }, "limit with vec/vec/vec");
|
||||||
|
tap.expect_eq (limit (val, 0.f, hi), util::vector3f { 0, 0, 0 }, "limit with vec/num/vec");
|
||||||
|
tap.expect_eq (limit (val, lo, 2.f), util::vector3f { 0, 1, 2 }, "limit with vec/vec/num");
|
||||||
|
tap.expect_eq (limit (val, 0.f, 2.f), util::vector3f { 0, 0, 2 }, "limit with vec/num/num");
|
||||||
|
}
|
||||||
|
|
||||||
return tap.status ();
|
return tap.status ();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user