diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_geos.gml b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_geos.gml new file mode 100644 index 00000000000..70d0ea51626 --- /dev/null +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_geos.gml @@ -0,0 +1,16 @@ + + + -5 03 8 + + + + -5 03 8 + -5 0 -1 0 1 1 2 2 3 3 2 5 -1 8 -1 7 1 4 -5 0 + + + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_03.xsd b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_geos.xsd similarity index 91% rename from python/plugins/processing/tests/testdata/expected/concave_hull_points_03.xsd rename to python/plugins/processing/tests/testdata/expected/concave_hull_points_03_geos.xsd index 754d43b6a49..d1c4e19f5cc 100644 --- a/python/plugins/processing/tests/testdata/expected/concave_hull_points_03.xsd +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_geos.xsd @@ -34,8 +34,8 @@ - - + + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_03.gml b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_qgis.gml similarity index 74% rename from python/plugins/processing/tests/testdata/expected/concave_hull_points_03.gml rename to python/plugins/processing/tests/testdata/expected/concave_hull_points_03_qgis.gml index 4aca65ec5a6..483f2353a34 100644 --- a/python/plugins/processing/tests/testdata/expected/concave_hull_points_03.gml +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_qgis.gml @@ -2,15 +2,15 @@ 1 23 5 - + 1 23 5 - 2 2 3 3 2 5 1 4 2 2 - + 2 2 3 3 2 5 1 4 2 2 + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07.xsd b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_qgis.xsd similarity index 91% rename from python/plugins/processing/tests/testdata/expected/concave_hull_points_07.xsd rename to python/plugins/processing/tests/testdata/expected/concave_hull_points_03_qgis.xsd index 63cfb6bba92..037808e0bb9 100644 --- a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07.xsd +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_03_qgis.xsd @@ -34,8 +34,8 @@ - - + + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_geos.gml b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_geos.gml new file mode 100644 index 00000000000..868cb02e392 --- /dev/null +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_geos.gml @@ -0,0 +1,16 @@ + + + -5 03 8 + + + + -5 03 8 + -5 0 -1 0 1 1 2 2 3 3 2 5 -1 8 -1 7 1 4 -5 0 + + + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_geos.xsd b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_geos.xsd new file mode 100644 index 00000000000..b94b03f2d93 --- /dev/null +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_geos.xsd @@ -0,0 +1,47 @@ + + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07.gml b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_qgis.gml similarity index 73% rename from python/plugins/processing/tests/testdata/expected/concave_hull_points_07.gml rename to python/plugins/processing/tests/testdata/expected/concave_hull_points_07_qgis.gml index c660eb66978..6990a79a11b 100644 --- a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07.gml +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_qgis.gml @@ -2,15 +2,15 @@ -1 03 8 - + -1 03 8 - 1 1 2 2 3 3 2 5 -1 8 -1 7 1 4 -1 0 1 1 - + 1 1 2 2 3 3 2 5 -1 8 -1 7 1 4 -1 0 1 1 + diff --git a/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_qgis.xsd b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_qgis.xsd new file mode 100644 index 00000000000..8e295bd3007 --- /dev/null +++ b/python/plugins/processing/tests/testdata/expected/concave_hull_points_07_qgis.xsd @@ -0,0 +1,47 @@ + + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/plugins/processing/tests/testdata/qgis_algorithm_tests4.yaml b/python/plugins/processing/tests/testdata/qgis_algorithm_tests4.yaml index 80551f05aa5..e7e3c0b48e7 100644 --- a/python/plugins/processing/tests/testdata/qgis_algorithm_tests4.yaml +++ b/python/plugins/processing/tests/testdata/qgis_algorithm_tests4.yaml @@ -268,37 +268,73 @@ tests: cast: str fid: skip - # concave hull tests should be upddated when CI will be using GEOS>=3.11 - # current tests data were generated by Python implementation which produces - # incorrect result by not including all input points in the concave hull - # see https://github.com/qgis/QGIS/issues/54561 - #- algorithm: native:concavehull - # name: Concave Hull - Points (0.3) - # params: - # ALPHA: 0.3 - # HOLES: true - # INPUT: - # name: points.gml - # type: vector - # NO_MULTIGEOMETRY: false - # results: - # OUTPUT: - # name: expected/concave_hull_points_03.gml - # type: vector + - algorithm: native:concavehull + name: Concave Hull - Points (0.3) (GEOS <= 3.10) + condition: + geos: + less_than: 31100 + params: + ALPHA: 0.3 + HOLES: true + INPUT: + name: points.gml + type: vector + NO_MULTIGEOMETRY: false + results: + OUTPUT: + name: expected/concave_hull_points_03_qgis.gml + type: vector - #- algorithm: native:concavehull - # name: Concave Hull - Points (0.7) - # params: - # ALPHA: 0.7 - # HOLES: true - # INPUT: - # name: points.gml - # type: vector - # NO_MULTIGEOMETRY: false - # results: - # OUTPUT: - # name: expected/concave_hull_points_07.gml - # type: vector + - algorithm: native:concavehull + name: Concave Hull - Points (0.7) (GEOS <= 3.10) + condition: + geos: + less_than: 31100 + params: + ALPHA: 0.7 + HOLES: true + INPUT: + name: points.gml + type: vector + NO_MULTIGEOMETRY: false + results: + OUTPUT: + name: expected/concave_hull_points_07_qgis.gml + type: vector + + - algorithm: native:concavehull + name: Concave Hull - Points (0.3) (GEOS > 3.11) + condition: + geos: + at_least: 31100 + params: + ALPHA: 0.3 + HOLES: true + INPUT: + name: points.gml + type: vector + NO_MULTIGEOMETRY: false + results: + OUTPUT: + name: expected/concave_hull_points_03_geos.gml + type: vector + + - algorithm: native:concavehull + name: Concave Hull - Points (0.7) (GEOS > 3.11) + condition: + geos: + at_least: 31100 + params: + ALPHA: 0.7 + HOLES: true + INPUT: + name: points.gml + type: vector + NO_MULTIGEOMETRY: false + results: + OUTPUT: + name: expected/concave_hull_points_07_geos.gml + type: vector - algorithm: qgis:knearestconcavehull name: K-nearest Neighbor Concave Hull - Points (k=7)