From 500f52d479d339120765a374fa916928a6663788 Mon Sep 17 00:00:00 2001 From: Martin Davis Date: Wed, 22 Jan 2025 11:55:50 -0800 Subject: [PATCH] Simplify checkUnionResult --- tests/xmltester/XMLTester.cpp | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/tests/xmltester/XMLTester.cpp b/tests/xmltester/XMLTester.cpp index 654904dcc..7e7ee94c6 100644 --- a/tests/xmltester/XMLTester.cpp +++ b/tests/xmltester/XMLTester.cpp @@ -690,9 +690,11 @@ bool Test::checkOverlaySuccess(Geometry const& gExpected, Geometry const& gActual) { double tol = operation::overlay::snap::GeometrySnapper::computeSizeBasedSnapTolerance(gExpected); + //-- BUG: this allows all empties to test equal if(gExpected.equals(&gActual)) { return 1; } + //TODO: is this needed by any tests? std::cerr << "Using an overlay tolerance of " << tol << std::endl; if(gExpected.equalsExact(&gActual, tol)) { return 1; @@ -871,23 +873,14 @@ Test::checkResult( const std::unique_ptr& result, actualResultStr = tester.printGeom(gActualRes.get()); } -//TODO: fix this hack. Only used for union now, and has a bug where empties test equal +//TODO: remove this hack when tests are fixed. Only used for union, and has a bug where empties test equal void Test::checkUnionResult( const std::unique_ptr& result ) { - std::string sExpected = opResult; - std::unique_ptr gExpected(tester.parseGeometry(sExpected, "expected")); - gExpected->normalize(); - - std::unique_ptr gActual(result->clone()); - gActual->normalize(); - - isSuccess = checkOverlaySuccess(*gExpected.get(), *gActual.get()); - - if(testValidOutput) { - isSuccess &= tester.testValid(gActual.get(), "result"); - } - actualResultStr = tester.printGeom(gActual.get()); + checkResult( result, + [](std::unique_ptr& expected, std::unique_ptr& actual) -> bool { + return checkOverlaySuccess(*expected.get(), *actual.get()); + }); } void