]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/libs/geometry/test/algorithms/test_correct.hpp
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / libs / geometry / test / algorithms / test_correct.hpp
index 1576b160285f1d4441b0c337df588eaecb9dc2cf..9ea698c5e663e0e63b397151e59e953cbde20306 100644 (file)
@@ -5,6 +5,10 @@
 // Copyright (c) 2008-2012 Bruno Lalande, Paris, France.
 // Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
 
+// This file was modified by Oracle on 2021.
+// Modifications copyright (c) 2021 Oracle and/or its affiliates.
+// Contributed and/or modified by Adam Wulkiewicz, on behalf of Oracle
+
 // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
 // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
 
 #include <geometry_test_common.hpp>
 
 #include <boost/geometry/algorithms/correct.hpp>
+#include <boost/geometry/geometries/adapted/boost_variant.hpp>
+#include <boost/geometry/geometries/geometry_collection.hpp>
 #include <boost/geometry/io/wkt/read.hpp>
 #include <boost/geometry/io/wkt/write.hpp>
-#include <boost/variant/variant.hpp>
 
 template <typename Geometry>
 void check_geometry(Geometry const& geometry, std::string const& expected)
@@ -41,13 +46,21 @@ void test_geometry(std::string const& wkt, std::string const& expected)
 {
     Geometry geometry;
     bg::read_wkt(wkt, geometry);
-    boost::variant<Geometry> v(geometry);
 
     bg::correct(geometry);
     check_geometry(geometry, expected);
 
+    boost::variant<Geometry> v(geometry);
+    
     bg::correct(v);
     check_geometry(v, expected);
+
+    std::string const pref = "GEOMETRYCOLLECTION(";
+    std::string const post = ")";
+    bg::model::geometry_collection<boost::variant<Geometry>> gc = { v };
+
+    bg::correct(gc);
+    check_geometry(gc, pref + expected + post);
 }