#include #include "clipper2/clipper.core.h" using namespace Clipper2Lib; TEST(Clipper2Tests, TestRectOpPlus) { { Rect64 lhs = Rect64::InvalidRect(); Rect64 rhs(-1, -1, 10, 10); { Rect64 sum = lhs + rhs; EXPECT_EQ(rhs, sum); } { std::swap(lhs, rhs); Rect64 sum = lhs + rhs; EXPECT_EQ(lhs, sum); } } { Rect64 lhs = Rect64::InvalidRect(); Rect64 rhs(1, 1, 10, 10); { Rect64 sum = lhs + rhs; EXPECT_EQ(rhs, sum); } { std::swap(lhs, rhs); Rect64 sum = lhs + rhs; EXPECT_EQ(lhs, sum); } } { Rect64 lhs(0, 0, 1, 1); Rect64 rhs(-1, -1, 0, 0); Rect64 expected(-1, -1, 1, 1); { Rect64 sum = lhs + rhs; EXPECT_EQ(expected, sum); } { std::swap(lhs, rhs); Rect64 sum = lhs + rhs; EXPECT_EQ(expected, sum); } } { Rect64 lhs(-10, -10, -1, -1); Rect64 rhs(1, 1, 10, 10); Rect64 expected(-10, -10, 10, 10); { Rect64 sum = lhs + rhs; EXPECT_EQ(expected, sum); } { std::swap(lhs, rhs); Rect64 sum = lhs + rhs; EXPECT_EQ(expected, sum); } } }