59 lines
1.3 KiB
C++
59 lines
1.3 KiB
C++
#pragma once
|
|
|
|
#include <J3ML/Geometry/Common.hpp>
|
|
#include <jtest/jtest.hpp>
|
|
using J3ML::Geometry::Interval;
|
|
|
|
int CommonGeometryTests() {
|
|
|
|
TEST("Geometry::Interval_Intersect", [] {
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{0, 1}.Intersects({2, 3})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 3}.Intersects({0, 1})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 4}.Intersects({3, 5})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 4}.Intersects({1, 3})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 3}.Intersects({3, 5})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{3, 5}.Intersects({2, 3})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 3}.Intersects({2, 5})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 3}.Intersects({2, 3})));
|
|
|
|
// . a
|
|
// . b
|
|
jtest::check(!(Interval{2, 2}.Intersects({2, 2})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{2, 5}.Intersects({3, 4})));
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
jtest::check(!(Interval{3, 4}.Intersects({2, 5})));
|
|
});
|
|
return 0;
|
|
}
|
|
|
|
|
|
|