52 lines
1.1 KiB
C++
52 lines
1.1 KiB
C++
#include <gtest/gtest.h>
|
|
#include <J3ML/Geometry/Common.h>
|
|
|
|
using J3ML::Geometry::Interval;
|
|
|
|
TEST(CommonGeometry, Interval_Intersect) {
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{0, 1}.Intersects({2, 3})), false);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 3}.Intersects({0, 1})), false);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 4}.Intersects({3, 5})), true);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 4}.Intersects({1, 3})), true);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 3}.Intersects({3, 5})), true);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{3, 5}.Intersects({2, 3})), true);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 3}.Intersects({2, 5})), true);\
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 3}.Intersects({2, 3})), true);
|
|
|
|
// . a
|
|
// . b
|
|
EXPECT_EQ((Interval{2, 2}.Intersects({2, 2})), true);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{2, 5}.Intersects({3, 4})), true);
|
|
|
|
// <- a ->
|
|
// <- b ->
|
|
EXPECT_EQ((Interval{3, 4}.Intersects({2, 5})), true);
|
|
}
|
|
|