diff --git a/Kinetic_space_partition/test/Kinetic_space_partition/kinetic_3d_test_all.cpp b/Kinetic_space_partition/test/Kinetic_space_partition/kinetic_3d_test_all.cpp index 75a05899bdd..cd433bd4087 100644 --- a/Kinetic_space_partition/test/Kinetic_space_partition/kinetic_3d_test_all.cpp +++ b/Kinetic_space_partition/test/Kinetic_space_partition/kinetic_3d_test_all.cpp @@ -1,19 +1,16 @@ #include #include #include +#include #include -#include #include #include -using SCF = CGAL::Simple_cartesian; using SCD = CGAL::Simple_cartesian; using EPICK = CGAL::Exact_predicates_inexact_constructions_kernel; using EPECK = CGAL::Exact_predicates_exact_constructions_kernel; -using GMPQ = CGAL::Simple_cartesian; -using Timer = CGAL::Real_timer; -std::size_t failed = 0; +std::size_t different = 0; template bool run_test( @@ -59,16 +56,14 @@ bool run_test( std::cout << ksp.number_of_volumes() << std::endl; if (results[i][0] != count[0] || results[i][1] != count[2] || results[i][2] != count[3]) { - std::cout << "TEST FAILED: Partitioning has not expected number of vertices, faces or volumes for k = " << ks[i] << std::endl; + std::cout << "TEST differs: Partitioning has not expected number of vertices, faces or volumes for k = " << ks[i] << std::endl; std::cout << "Expectation:" << std::endl; std::cout << "v: " << results[i][0] << " f : " << results[i][1] << " v : " << results[i][2] << std::endl; std::cout << "Result k = " << " vertices : " << count[0] << " faces : " << count[2] << " volumes : " << count[3] << std::endl; std::cout << input_filename << std::endl; - std::string buf; - std::cin >> buf; - exit(0); - //assert(false); + + different++; } else std::cout << "TEST PASSED k = " << ks[i] << " " << input_filename << std::endl; } @@ -78,36 +73,25 @@ bool run_test( template void run_all_tests() { - failed = 0; + different = 0; std::cout.precision(10); std::vector< std::vector > all_times; - // All results are precomputed for k = 1! - std::vector > results(3); // - - results[0] = { 50, 71, 15 }; - results[1] = { 56, 85, 19 }; - results[2] = { 63, 102, 24 }; - run_test("data/stress-test-5/test-2-rnd-polygons-20-4.off", { 1, 2, 3 }, results); - - results[0] = { 206, 385, 99 };// - results[1] = { 237, 462, 122 };// - results[2] = { 260, 529, 144 };// - run_test("data/real-data-test/test-15-polygons.off", {1, 2, 3 }, results); + std::vector > results(3); results[0] = { 40, 52, 11 }; - results[1] = { 48, 70, 16 };// - results[2] = { 54, 84, 20 };// + results[1] = { 48, 70, 16 }; + results[2] = { 54, 84, 20 }; run_test("data/edge-case-test/test-same-time.off", { 1, 2, 3 }, results); // Edge tests. - results[0] = { 18, 20, 4 };// + results[0] = { 18, 20, 4 }; run_test("data/edge-case-test/test-2-polygons.off", { 1 }, results); - results[0] = { 22, 25, 5 };// coplanar + results[0] = { 22, 25, 5 }; run_test("data/edge-case-test/test-4-polygons.off", { 1 }, results); - results[0] = { 22, 25, 5 };// coplanar + results[0] = { 22, 25, 5 }; run_test("data/edge-case-test/test-5-polygons.off", { 1 }, results); results[0] = { 39, 49, 10 }; @@ -209,8 +193,8 @@ void run_all_tests() { results[0] = { 17, 17, 3 }; results[1] = { 19, 21, 4 }; run_test("data/stress-test-3/test-4-rnd-polygons-2-4.off", { 1, 2 }, results); - //results[0] = { 14, 13, 2 }; - //run_test("data/stress-test-3/test-5-rnd-polygons-1-3.off", { 1 }, results); + results[0] = { 14, 13, 2 }; + run_test("data/stress-test-3/test-5-rnd-polygons-1-3.off", { 1 }, results); results[0] = { 18, 18, 3 }; results[1] = { 19, 21, 4 }; run_test("data/stress-test-3/test-6-rnd-polygons-2-3.off", { 1, 2 }, results); @@ -282,29 +266,27 @@ void run_all_tests() { results[2] = { 127, 233, 60 }; run_test("data/real-data-test/test-10-polygons.off", { 1, 2, 3 }, results); + results[0] = { 206, 385, 99 }; + results[1] = { 237, 462, 122 }; + results[2] = { 260, 529, 144 }; + run_test("data/real-data-test/test-15-polygons.off", { 1, 2, 3 }, results); + results[0] = { 1156, 2466, 677 }; results[1] = { 1131, 2387, 650 }; results[2] = { 1395, 3115, 882 }; - run_test("data/real-data-test/test-40-polygons_full.ply", { 1, 2, 3 }, results); + run_test("data/real-data-test/test-40-polygons.ply", { 1, 2, 3 }, results); const auto kernel_name = boost::typeindex::type_id().pretty_name(); - if (failed != 0) { - std::cout << std::endl << kernel_name << failed << " TESTS FAILED!" << std::endl << std::endl; + if (different != 0) { + std::cout << std::endl << kernel_name << different << " TESTS differ from typical values!" << std::endl << std::endl; } std::cout << std::endl << kernel_name << " TESTS SUCCESS!" << std::endl << std::endl; } -#include - int main(const int /* argc */, const char** /* argv */) { - // run_all_tests(); - // run_all_tests(); - //run_all_tests(); - - // Passes all tests except for those when - // intersections lead to accumulated errors. - //build(); + run_all_tests(); run_all_tests(); + //run_all_tests(); //run_all_tests(); return EXIT_SUCCESS; }