QGIS/python/plugins/processing/tests/testdata/qgis_algorithm_tests2.yaml
Nyall Dawson 7355c24db8 [processing] Endpoint distance threshold for network analysis
Adds an optional end point distance threshold parameter to the
network analysis tools. Previously (and still, by default) endpoints
will ALWAYS be snapped to the nearest point in the network layer,
regardless of how far away from the network they actually are. This
can result in meaningless results, as the tools will happily snap
points to a road hundreds of kilometers away :)

Now, there's an optional end point distance threshold parameter
for these tools. The behaviour of the threshold depends on the
algorithm:

- For the “Service area (from layer)” tool an optional new output
was added for “non routable features”. This output will contain
any features which were deemed too far from the network. All
other features which are within tolerance distance to the
network will be stored in the standard output from the tool.
- For the “Service area (from point)” tool an error will be raised
if the point is too far from the network
- For the “Shortest path (point to point)” tool an error will
be raised if either the source or destination points are too far
from the network.
- For the “Shortest path (layer to point)” and “Shortest path (point
to layer)” tools:
  - An error will be raised if the **point** is too far from the network.
  - A new optional output was added for “non routable features”. This
    output will contain any features which were deemed too far from the
    network. All other features which are within tolerance distance to
    the network will be stored in the standard output from the tool.

Sponsored by City of Canning
2024-04-20 08:50:00 +10:00

2633 lines
64 KiB
YAML

# See ../README.md for a description of the file format
tests:
- algorithm: qgis:tininterpolation
name: TIN interpolation using attribute
params:
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::0::~::1::~::0
type: interpolation
METHOD: 0
PIXEL_SIZE: 0.1
results:
OUTPUT:
hash:
- bfb3616a73065c0cb41eb1c5c1e9e8812fe1c63019a6177adb1dfe3e
- 19bbd79d15b0ba7dbde05665d559e9806fdb1cd579df9222f9cc4d92
- 3dfa1e041f33a72abf72d2d706c03e11fa5274f152dec1db1661b8e0
type: rasterhash
- algorithm: qgis:tininterpolation
name: TIN interpolation using Z value
params:
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0
type: interpolation
METHOD: 0
PIXEL_SIZE: 0.1
results:
OUTPUT:
hash:
- bfb3616a73065c0cb41eb1c5c1e9e8812fe1c63019a6177adb1dfe3e
- 19bbd79d15b0ba7dbde05665d559e9806fdb1cd579df9222f9cc4d92
- 3dfa1e041f33a72abf72d2d706c03e11fa5274f152dec1db1661b8e0
type: rasterhash
- algorithm: qgis:tininterpolation
name: TIN interpolation with breaklines
params:
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0::|::breaklines.gml::~::0::~::1::~::2
type: interpolation
METHOD: 0
PIXEL_SIZE: 0.1
results:
OUTPUT:
hash:
- b8e49813c507b73cb39a5ad904b2d302ccb25c591a2e577b6405f982
- 19bbd79d15b0ba7dbde05665d559e9806fdb1cd579df9222f9cc4d92
- 3dfa1e041f33a72abf72d2d706c03e11fa5274f152dec1db1661b8e0
type: rasterhash
- algorithm: qgis:tininterpolation
name: TIN interpolation using attribute (old parameters)
params:
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::0::~::1::~::0
type: interpolation
METHOD: 0
COLUMNS: 80
ROWS: 80
results:
OUTPUT:
hash:
- bfb3616a73065c0cb41eb1c5c1e9e8812fe1c63019a6177adb1dfe3e
- 19bbd79d15b0ba7dbde05665d559e9806fdb1cd579df9222f9cc4d92
- 3dfa1e041f33a72abf72d2d706c03e11fa5274f152dec1db1661b8e0
type: rasterhash
- algorithm: qgis:tininterpolation
name: TIN interpolation using Z value (old parameters)
params:
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0
type: interpolation
METHOD: 0
COLUMNS: 80
ROWS: 80
results:
OUTPUT:
hash:
- bfb3616a73065c0cb41eb1c5c1e9e8812fe1c63019a6177adb1dfe3e
- 19bbd79d15b0ba7dbde05665d559e9806fdb1cd579df9222f9cc4d92
- 3dfa1e041f33a72abf72d2d706c03e11fa5274f152dec1db1661b8e0
type: rasterhash
- algorithm: qgis:tininterpolation
name: TIN interpolation with breaklines (old parameters)
params:
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0::|::breaklines.gml::~::0::~::1::~::2
type: interpolation
METHOD: 0
COLUMNS: 80
ROWS: 80
results:
OUTPUT:
hash:
- b8e49813c507b73cb39a5ad904b2d302ccb25c591a2e577b6405f982
- 19bbd79d15b0ba7dbde05665d559e9806fdb1cd579df9222f9cc4d92
- 3dfa1e041f33a72abf72d2d706c03e11fa5274f152dec1db1661b8e0
type: rasterhash
- algorithm: qgis:idwinterpolation
name: IDW interpolation using attribute
params:
DISTANCE_COEFFICIENT: 2.0
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::0::~::1::~::0
type: interpolation
PIXEL_SIZE: 0.1
results:
OUTPUT:
hash:
- 55dfd0e0e5ea300d2314785ab6aa1f4d941a4506e63d0d9e2b84e959
- b5fc06549f1b0ce3261f9fb8868bb6d082edcbfe409c89a82e2b7e7a
type: rasterhash
- algorithm: qgis:idwinterpolation
name: IDW interpolation using Z value
params:
DISTANCE_COEFFICIENT: 2.0
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0
type: interpolation
PIXEL_SIZE: 0.1
results:
OUTPUT:
hash:
- 55dfd0e0e5ea300d2314785ab6aa1f4d941a4506e63d0d9e2b84e959
- b5fc06549f1b0ce3261f9fb8868bb6d082edcbfe409c89a82e2b7e7a
type: rasterhash
- algorithm: qgis:idwinterpolation
name: IDW interpolation with breaklines
params:
DISTANCE_COEFFICIENT: 2.0
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0::|::breaklines.gml::~::0::~::1::~::2
type: interpolation
PIXEL_SIZE: 0.1
results:
OUTPUT:
hash:
- d53cd7327d53bd4b8fb2de8b206e5aa0a1366963f2b63f58c2b7926e
- b5fc06549f1b0ce3261f9fb8868bb6d082edcbfe409c89a82e2b7e7a
type: rasterhash
- algorithm: qgis:idwinterpolation
name: IDW interpolation using attribute (old parameters)
params:
DISTANCE_COEFFICIENT: 2.0
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::0::~::1::~::0
type: interpolation
COLUMNS: 80
ROWS: 80
results:
OUTPUT:
hash:
- 55dfd0e0e5ea300d2314785ab6aa1f4d941a4506e63d0d9e2b84e959
- b5fc06549f1b0ce3261f9fb8868bb6d082edcbfe409c89a82e2b7e7a
type: rasterhash
- algorithm: qgis:idwinterpolation
name: IDW interpolation using Z value (old parameters)
params:
DISTANCE_COEFFICIENT: 2.0
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0
type: interpolation
COLUMNS: 80
ROWS: 80
results:
OUTPUT:
hash:
- 55dfd0e0e5ea300d2314785ab6aa1f4d941a4506e63d0d9e2b84e959
- b5fc06549f1b0ce3261f9fb8868bb6d082edcbfe409c89a82e2b7e7a
type: rasterhash
- algorithm: qgis:idwinterpolation
name: IDW interpolation with breaklines (old parameters)
params:
DISTANCE_COEFFICIENT: 2.0
EXTENT: 0.000000000,8.000000000,-5.000000000,3.000000000 [EPSG:4326]
INTERPOLATION_DATA:
name: pointsz.gml::~::1::~::-1::~::0::|::breaklines.gml::~::0::~::1::~::2
type: interpolation
COLUMNS: 80
ROWS: 80
results:
OUTPUT:
hash:
- d53cd7327d53bd4b8fb2de8b206e5aa0a1366963f2b63f58c2b7926e
- b5fc06549f1b0ce3261f9fb8868bb6d082edcbfe409c89a82e2b7e7a
type: rasterhash
- algorithm: native:removenullgeometries
name: Remove null geometries (do not remove empty)
params:
INPUT:
name: polys.gml
type: vector
results:
OUTPUT:
name: expected/remove_null_polys.gml
type: vector
- algorithm: native:removenullgeometries
name: Remove null geometries (remove empty)
params:
INPUT:
name: polys.gml
type: vector
REMOVE_EMPTY: true
results:
OUTPUT:
name: expected/remove_null_polys.gml
type: vector
- algorithm: native:removenullgeometries
name: Remove null geometries (do not remove empty, but there is empty data)
params:
INPUT:
name: custom/multi_polys_with_empty_geoms.gpkg|layername=multi_polys_with_empty_geoms
type: vector
results:
OUTPUT:
name: ogr:dbname='expected/multi_polys_non_null_one_empty.gpkg' table="output" (geom) sql=
uri: expected/multi_polys_non_null_one_empty.gpkg|layername=multi_polys_non_null_one_empty
type: vector
- algorithm: native:removenullgeometries
name: Remove null geometries (remove empty, and there is empty data)
params:
INPUT:
name: custom/multi_polys_with_empty_geoms.gpkg|layername=multi_polys_with_empty_geoms
type: vector
REMOVE_EMPTY: true
results:
OUTPUT:
name: expected/multi_polys_non_null_non_empty.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:removenullgeometries
name: Remove null geometries, 2 outputs (do not remove empty, but there is empty data)
params:
INPUT:
name: custom/multi_polys_with_empty_geoms.gpkg|layername=multi_polys_with_empty_geoms
type: vector
results:
OUTPUT:
name: ogr:dbname='expected/results_remove_null_geometries.gpkg' table="output" (geom) sql=
uri: expected/results_remove_null_geometries.gpkg|layername=do_not_remove_empty_non_null
type: vector
NULL_OUTPUT:
name: ogr:dbname='expected/results_remove_null_geometries.gpkg' table="output" (geom) sql=
uri: expected/results_remove_null_geometries.gpkg|layername=do_not_remove_empty_null
type: vector
- algorithm: native:removenullgeometries
name: Remove null geometries, 2 outputs (remove empty, and there is empty data)
params:
INPUT:
name: custom/multi_polys_with_empty_geoms.gpkg|layername=multi_polys_with_empty_geoms
type: vector
REMOVE_EMPTY: true
results:
OUTPUT:
name: ogr:dbname='expected/results_remove_null_geometries.gpkg' table="output" (geom) sql=
uri: expected/results_remove_null_geometries.gpkg|layername=remove_empty_non_null
type: vector
NULL_OUTPUT:
name: ogr:dbname='expected/results_remove_null_geometries.gpkg' table="output" (geom) sql=
uri: expected/results_remove_null_geometries.gpkg|layername=remove_empty_null
type: vector
- algorithm: native:extractbyexpression
name: Extract by Expression
params:
EXPRESSION: left( "Name",1)='A'
INPUT:
name: polys.gml
type: vector
results:
OUTPUT:
name: expected/extract_expression.gml
type: vector
- algorithm: native:extendlines
name: Extend lines
params:
END_DISTANCE: 0.2
INPUT:
name: lines.gml
type: vector
START_DISTANCE: 0.1
results:
OUTPUT:
name: expected/extend_lines.gml
type: vector
compare:
geometry:
precision: 7
- algorithm: native:extendlines
name: Extend multilines
params:
END_DISTANCE: 0.4
INPUT:
name: multilines.gml
type: vector
START_DISTANCE: 0.2
results:
OUTPUT:
name: expected/extend_multilines.gml
type: vector
- algorithm: native:extractspecificvertices
name: Extract specific vertices lines
params:
INPUT:
name: lines.gml
type: vector
VERTICES: 0,-1,2,-2
results:
OUTPUT:
name: expected/extract_specific_nodes_lines.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:extractspecificvertices
name: Extract specific vertices polygons
params:
INPUT:
name: polys.gml
type: vector
VERTICES: 0,-1,5,-5
results:
OUTPUT:
name: expected/extract_specific_nodes_polys.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:extractspecificvertices
name: Extract specific vertices points
params:
INPUT:
name: multipoints.gml
type: vector
VERTICES: '0'
results:
OUTPUT:
name: expected/extract_specific_nodes_points.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:fuzzifyrasterlinearmembership
name: Test (native:fuzzifyrasterlinearmembership)
params:
BAND: 1
FUZZYHIGHBOUND: 100.0
FUZZYLOWBOUND: 200.0
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: ed9591139fed080e0b5b789052b881c8fddb25c106ff14e89cbb06c5
type: rasterhash
- algorithm: native:fuzzifyrasterlinearmembership
name: Test (native:fuzzifyrasterlinearmembership)
params:
BAND: 1
FUZZYHIGHBOUND: 200.0
FUZZYLOWBOUND: 100.0
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: 980df1d095601a885a7518038cdb327d83366db6f33a3fe307eab149
type: rasterhash
- algorithm: native:fuzzifyrasterpowermembership
name: Test (native:fuzzifyrasterpowermembership)
params:
BAND: 1
FUZZYEXPONENT: 2.0
FUZZYHIGHBOUND: 100.0
FUZZYLOWBOUND: 200.0
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: d18f956cb94d09a449a62299408e442973f4391415a9005d4d6850dc
type: rasterhash
- algorithm: native:fuzzifyrasterpowermembership
name: Test (native:fuzzifyrasterpowermembership)
params:
BAND: 1
FUZZYEXPONENT: 2.0
FUZZYHIGHBOUND: 200.0
FUZZYLOWBOUND: 100.0
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: 782bcc1851b9e73b8c962d4850e356c3dab11999ee41dce9dd2aea5f
type: rasterhash
- algorithm: native:fuzzifyrasterlargemembership
name: Test (native:fuzzifyrasterlargemembership)
params:
BAND: 1
FUZZYMIDPOINT: 100.0
FUZZYSPREAD: 5.0
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: d4479a5077235cffe4586f40a7c867139a50347f8312fd443c130ccb
type: rasterhash
- algorithm: native:fuzzifyrastersmallmembership
name: Test (native:fuzzifyrastersmallmembership)
params:
BAND: 1
FUZZYMIDPOINT: 100.0
FUZZYSPREAD: 5.0
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: 31569e93dbdd82c85cbf72c4ceb521015bd143e2106968a413a4ec6c
type: rasterhash
- algorithm: native:fuzzifyrastergaussianmembership
name: Test (native:fuzzifyrastergaussianmembership)
params:
BAND: 1
FUZZYMIDPOINT: 100.0
FUZZYSPREAD: 0.01
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: e51532915836f3e77695fb8d650a2d1e0984a5be8e8bbf4df677d160
type: rasterhash
- algorithm: native:fuzzifyrasternearmembership
name: Test (native:fuzzifyrasternearmembership)
params:
BAND: 1
FUZZYMIDPOINT: 100.0
FUZZYSPREAD: 0.01
INPUT:
name: dem.tif
type: raster
results:
OUTPUT:
hash: 71aecb383a686d78ea0e677901a8a93f822b9897d7a9e23ba4ebf24d
type: rasterhash
- algorithm: native:geometrybyexpression
name: Geometry by expression (point)
params:
EXPRESSION: 'translate( $geometry,1,1)'
INPUT:
name: points.gml
type: vector
OUTPUT_GEOMETRY: '0'
WITH_M: false
WITH_Z: false
results:
OUTPUT:
name: expected/geometry_by_expression_point.gml
type: vector
- algorithm: native:geometrybyexpression
name: Geometry by expression (polygon)
params:
EXPRESSION: ' translate( centroid($geometry),1,1)'
INPUT:
name: polys.gml
type: vector
OUTPUT_GEOMETRY: '2'
WITH_M: false
WITH_Z: false
results:
OUTPUT:
name: expected/geometry_by_expression_poly.gml
type: vector
compare:
geometry:
precision: 7
- algorithm: native:geometrybyexpression
name: Geometry by expression (line)
params:
EXPRESSION: ' translate( $geometry,1,1)'
INPUT:
name: lines.gml
type: vector
OUTPUT_GEOMETRY: '1'
WITH_M: false
WITH_Z: false
results:
OUTPUT:
name: expected/geometry_by_expression_line.gml
type: vector
- algorithm: native:snapgeometries
name: Snap lines to lines
params:
BEHAVIOR: '0'
INPUT:
name: snap_lines.gml
type: vector
REFERENCE_LAYER:
name: lines.gml
type: vector
TOLERANCE: 1.0
results:
OUTPUT:
name: expected/snap_lines_to_lines.gml
type: vector
- algorithm: native:snapgeometries
name: Snap polygons to polygons
params:
BEHAVIOR: '0'
INPUT:
name: snap_polys.gml
type: vector
REFERENCE_LAYER:
name: polys.gml
type: vector
TOLERANCE: 1.0
results:
OUTPUT:
name: expected/snap_polys_to_polys.gml
type: vector
- algorithm: native:snapgeometries
name: Snap points to points
params:
BEHAVIOR: '0'
INPUT:
name: snap_points.gml
type: vector
REFERENCE_LAYER:
name: points.gml
type: vector
TOLERANCE: 1.0
results:
OUTPUT:
name: expected/snap_points_to_points.gml
type: vector
- algorithm: native:snapgeometries
name: Snap points to lines (prefer nodes)
params:
BEHAVIOR: '0'
INPUT:
name: snap_points.gml
type: vector
REFERENCE_LAYER:
name: lines.gml
type: vector
TOLERANCE: 1.0
results:
OUTPUT:
name: expected/snap_point_to_lines_prefer_nodes.gml
type: vector
- algorithm: native:snapgeometries
name: Snap points to lines (prefer closest)
params:
BEHAVIOR: '1'
INPUT:
name: snap_points.gml
type: vector
REFERENCE_LAYER:
name: lines.gml
type: vector
TOLERANCE: 1.0
results:
OUTPUT:
name: expected/snap_point_to_lines_prefer_closest.gml
type: vector
- algorithm: native:snapgeometries
name: Snap internal
params:
BEHAVIOR: '0'
INPUT:
name: custom/snap_internal.gml
type: vector
REFERENCE_LAYER:
name: custom/snap_internal.gml
type: vector
TOLERANCE: 1.0
results:
OUTPUT:
name: expected/snap_internal.gml
type: vector
- algorithm: native:snapgeometries
name: Test Snap Geometries (to each other)
params:
BEHAVIOR: '7'
INPUT:
name: custom/snap_geometries.geojson
type: vector
REFERENCE_LAYER:
name: custom/snap_geometries.geojson
type: vector
TOLERANCE: 0.5
results:
OUTPUT:
name: expected/snap_geometries.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:snapgeometries
name: Snap lines to lines (against itself; ordering check)
params:
BEHAVIOR: '0'
INPUT:
name: lines_t_shape.gml
type: vector
REFERENCE_LAYER:
name: lines_t_shape.gml
type: vector
TOLERANCE: 0.3
results:
OUTPUT:
name: expected/lines_t_shape_snapped.gml
type: vector
- algorithm: native:poleofinaccessibility
name: Pole of inaccessibility (polygons)
params:
INPUT:
name: polys.gml
type: vector
TOLERANCE: 1.0e-05
results:
OUTPUT:
name: expected/pole_inaccessibility_polys.gml
type: vector
compare:
geometry:
precision: 7
- algorithm: native:extractbyattribute
name: Extract by attribute (is null)
params:
FIELD: intval
INPUT:
name: polys.gml
type: vector
OPERATOR: '8'
results:
OUTPUT:
name: expected/extract_by_attribute_null.gml
type: vector
- algorithm: native:extractbyattribute
name: Extract by attribute (is not null)
params:
FIELD: intval
INPUT:
name: polys.gml
type: vector
OPERATOR: '9'
results:
OUTPUT:
name: expected/extract_by_attribute_not_null.gml
type: vector
- algorithm: native:extractbyattribute
name: Extract by attribute (bad field)
params:
FIELD: notafield
INPUT:
name: polys.gml
type: vector
OPERATOR: '9'
results:
OUTPUT:
name: expected/failure.gml
type: vector
expectedException: true
- algorithm: native:extractbyattribute
name: Extract by attribute (starts with)
params:
FIELD: name
INPUT:
name: polys.gml
type: vector
OPERATOR: '6'
VALUE: A
results:
OUTPUT:
name: expected/extract_by_attribute_startswith.gml
type: vector
- algorithm: native:extractbyattribute
name: Extract by attribute (contains)
params:
FIELD: name
INPUT:
name: polys.gml
type: vector
OPERATOR: '7'
VALUE: aaa
results:
OUTPUT:
name: expected/extract_by_attribute_contains.gml
type: vector
- algorithm: native:extractbyattribute
name: Extract by attribute (does not contain)
params:
FIELD: name
INPUT:
name: polys.gml
type: vector
OPERATOR: '10'
VALUE: a
results:
OUTPUT:
name: expected/extract_by_attribute_does_not_contain.gml
type: vector
- algorithm: native:extractbyattribute
name: Extract by attribute (greater)
params:
FIELD: floatval
INPUT:
name: polys.gml
type: vector
OPERATOR: '2'
VALUE: '1'
results:
OUTPUT:
name: expected/extract_by_attribute_greater.gml
type: vector
- algorithm: qgis:deletecolumn
name: Delete columns (multiple)
params:
COLUMN: floatval;name;xxxxxx
INPUT:
name: polys.gml
type: vector
results:
OUTPUT:
name: expected/delete_columns.gml
type: vector
- algorithm: qgis:deletecolumn
name: Delete columns (single)
params:
COLUMN: intval
INPUT:
name: polys.gml
type: vector
results:
OUTPUT:
name: expected/delete_column.gml
type: vector
- algorithm: native:createpointslayerfromtable
name: Create points from table
params:
INPUT:
name: create_points.gml
type: table
MFIELD: mcoord
TARGET_CRS: EPSG:4326
XFIELD: xcoord
YFIELD: ycoord
ZFIELD: zcoord
results:
OUTPUT:
name: expected/create_points.gml
type: vector
- algorithm: native:splitwithlines
name: Split poly with lines
params:
INPUT:
name: polys.gml
type: vector
LINES:
name: lines.gml
type: vector
results:
OUTPUT:
name: expected/split_polys_with_lines.shp
type: vector
compare:
geometry:
precision: 7
fields:
fid: skip
- algorithm: native:splitwithlines
name: Split lines with same lines
params:
INPUT:
name: lines.gml
type: vector
LINES:
name: lines.gml
type: vector
results:
OUTPUT:
name: expected/split_lines_with_same2.shp
type: vector
compare:
geometry:
precision: 7
fields:
fid: skip
# Split lines with lines considers two cases
# case 1: two different layers
- algorithm: native:splitwithlines
name: Split lines with lines
params:
INPUT:
name: lines.gml
type: vector
LINES:
name: custom/lines2.gml
type: vector
results:
OUTPUT:
name: expected/split_lines_with_lines.shp
type: vector
compare:
geometry:
precision: 7
fields:
fid: skip
# case 2 split line layer with iself
- algorithm: native:splitwithlines
name: Split lines with same lines (2)
params:
INPUT:
name: custom/lines2.gml
type: vector
LINES:
name: custom/lines2.gml
type: vector
results:
OUTPUT:
name: expected/split_lines_with_lines_same.shp
type: vector
compare:
geometry:
precision: 7
fields:
fid: skip
- algorithm: native:dropgeometries
name: Drop geometries
params:
INPUT:
name: polys.gml
type: vector
results:
OUTPUT:
name: expected/dropped_geometry.csv
type: vector
- algorithm: native:creategrid
name: Create grid (lines)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HSPACING: 5.0
TYPE: '1'
VSPACING: 3.0
results:
OUTPUT:
name: expected/grid_lines.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (rectangles)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HSPACING: 5.0
TYPE: '2'
VSPACING: 3.0
results:
OUTPUT:
name: expected/grid_rectangles.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (diamond)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HSPACING: 5.0
TYPE: '3'
VSPACING: 3.0
results:
OUTPUT:
name: expected/grid_diamond.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (hexagon)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HSPACING: 5.0
TYPE: '4'
VSPACING: 5.0
results:
OUTPUT:
name: expected/grid_hexagon.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (lines with overlay)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HOVERLAY: 2.0
HSPACING: 5.0
TYPE: '1'
VOVERLAY: 1.0
VSPACING: 3.0
results:
OUTPUT:
name: expected/grid_lines_overlay.gml
type: vector
compare:
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (rectangle with overlay)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HOVERLAY: 2.0
HSPACING: 5.0
TYPE: '2'
VOVERLAY: 1.0
VSPACING: 3.0
results:
OUTPUT:
name: expected/grid_rectangle_overlay.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (diamond with overlay)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HOVERLAY: 2.0
HSPACING: 5.0
TYPE: '3'
VOVERLAY: 1.0
VSPACING: 3.0
results:
OUTPUT:
name: expected/grid_diamond_overlay.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:creategrid
name: Create grid (hexagon with overlay)
params:
CRS: EPSG:4326
EXTENT: -1,11.2,-4,6.5
HOVERLAY: 2.0
HSPACING: 5.0
TYPE: '4'
VOVERLAY: 1.0
VSPACING: 5.0
results:
OUTPUT:
name: expected/grid_hexagon_overlay.gml
type: vector
compare:
geometry:
precision: 7
fields:
left:
precision: 7
right:
precision: 7
top:
precision: 7
bottom:
precision: 7
fid: skip
- algorithm: native:deleteholes
name: Delete holes (no min)
params:
INPUT:
name: custom/remove_holes.gml
type: vector
MIN_AREA: 0.0
results:
OUTPUT:
name: expected/removed_holes.gml
type: vector
pk: intval
- algorithm: native:deleteholes
name: Delete holes (with min)
params:
INPUT:
name: custom/remove_holes.gml
type: vector
MIN_AREA: 5.0
results:
OUTPUT:
name: expected/removed_holes_min_area.gml
type: vector
pk: intval
- algorithm: qgis:basicstatisticsforfields
name: Basic stats datetime
params:
FIELD_NAME: date_time
INPUT_LAYER:
name: custom/datetimes.tab
type: table
results:
OUTPUT_HTML_FILE:
name: expected/basic_statistics_datetime.html
type: regex
rules:
- 'Analyzed field: date_time'
- 'Count: 4'
- 'Unique values: 4'
- 'Minimum value: 2014-11-30T14:30:02'
- 'Maximum value: 2016-11-30T14:29:22'
- 'NULL \(missing\) values: 1'
- algorithm: qgis:basicstatisticsforfields
name: Basic stats date
params:
FIELD_NAME: date
INPUT_LAYER:
name: custom/datetimes.tab
type: table
results:
OUTPUT_HTML_FILE:
name: expected/basic_statistics_date.html
type: regex
rules:
- 'Analyzed field: date'
- 'Count: 4'
- 'Unique values: 4'
- 'Minimum value: 2014-11-30T00:00:00'
- 'Maximum value: 2016-11-30T00:00:00'
- 'NULL \(missing\) values: 1'
- algorithm: qgis:basicstatisticsforfields
name: Basic stats time
params:
FIELD_NAME: time
INPUT_LAYER:
name: custom/datetimes.tab
type: table
results:
OUTPUT_HTML_FILE:
name: expected/basic_statistics_time.html
type: regex
rules:
- 'Analyzed field: time'
- 'Count: 4'
- 'Unique values: 4'
- 'Minimum value: 03:29:40'
- 'Maximum value: 15:29:22'
- 'NULL \(missing\) values: 1'
- algorithm: native:rastercalc
name: Raster Calculator with cellsize
params:
LAYERS:
params:
- name: dem.tif
type: raster
type: multi
CELLSIZE: 0.001
EXPRESSION: '"dem.tif@1"'
results:
OUTPUT:
hash: 525577c05dd999239d9c6f95fd5e70d96355da3a0ea71bfcf021e729
hash: 6ced822cc490c7a3d9346b6c8cd4b282eb4e2a9fdd6e7371f6174117
type: rasterhash
- algorithm: native:rastercalc
name: Raster Calculator
params:
LAYERS:
params:
- name: dem.tif
type: raster
type: multi
CELLSIZE: 0.0
EXPRESSION: '"dem.tif@1" * 2'
results:
OUTPUT:
hash: 98daf025230ec9d031f7502c6a80a3b04dd060808d6b7bcb4328e87c
type: rasterhash
- algorithm: native:orientedminimumboundingbox
name: Oriented minimum bounding box polys
params:
INPUT:
name: custom/oriented_bbox.gml
type: vector
results:
OUTPUT:
name: expected/oriented_bounds.gml
type: vector
pk: intval
compare:
geometry:
precision: 7
- algorithm: native:orthogonalize
name: Orthogonalize polys
params:
INPUT:
name: custom/polys_to_orth.gml
type: vector
results:
OUTPUT:
name: expected/orthagonal_polys.gml # SPELLOK
type: vector
compare:
geometry:
precision: 7
- algorithm: native:orthogonalize
name: Orthogonalize lines
params:
INPUT:
name: custom/lines_to_orth.gml
type: vector
results:
OUTPUT:
name: expected/orthagonal_lines.gml # SPELLOK
type: vector
compare:
geometry:
precision: 7
- algorithm: qgis:refactorfields
name: refactor fields
params:
INPUT:
name: multipolys.gml
type: vector
FIELDS_MAPPING:
- expression: '@row_number'
name: 'row_number'
type: 2
length: 0
precision: 0
- expression: >
"fid" || ' - ' || "Bname"
name: 'Bname'
type: 10
length: 30
precision: 0
- expression: '"Bintval" + 1'
name: 'Bintval'
type: 2
length: 0
precision: 0
- expression: '"Bfloatval" * 2'
name: 'Bfloatval'
type: 6
length: 0
precision: 0
results:
OUTPUT:
name: expected/refactorfields.gml
type: vector
compare:
fields:
fid: skip
- algorithm: qgis:refactorfields
name: Refactor fields, empty expression
params:
FIELDS_MAPPING:
- expression: '"fid"'
length: 0
name: fid
precision: 0
type: 10
- expression: '"id"'
length: 0
name: id
precision: 0
type: 2
- expression: '"id2"'
length: 0
name: id2
precision: 0
type: 2
- expression: ''
length: 0
name: no_exp
precision: 0
type: 10
INPUT:
name: points.gml
type: vector
results:
OUTPUT:
name: expected/refactor_fields_null.gml
type: vector
- algorithm: qgis:refactorfields
name: Refactor fields, array
params:
FIELDS_MAPPING:
- expression: '"fid"'
length: 0
name: fid
precision: 0
type: 10
- expression: '"id"'
length: 0
name: id
precision: 0
type: 2
- expression: '"id2"'
length: 0
name: id2
precision: 0
type: 2
- expression: 'array(1,2,3)'
length: 0
name: array
precision: 0
type: 9
sub_type: 2
INPUT:
name: points.gml
type: vector
results:
OUTPUT:
name: expected/refactor_array.gml
type: vector
compare:
fields:
gml_id: skip
- algorithm: native:reprojectlayer
name: reproject vector layer
params:
INPUT:
name: points.gml
type: vector
TARGET_CRS: EPSG:3857
results:
OUTPUT:
name: expected/reprojected.gml
type: vector
compare:
geometry:
precision: 7
- algorithm: qgis:variabledistancebuffer
name: variable buffer on points
params:
DISSOLVE: false
FIELD: buffer
INPUT:
name: custom/variable_buffer.gml
type: vector
SEGMENTS: 5
results:
OUTPUT:
name: expected/variable_buffer_points.gml
type: vector
compare:
geometry:
precision: 5
- algorithm: qgis:variabledistancebuffer
name: variable buffer on points with dissolve option
params:
DISSOLVE: true
FIELD: buffer
INPUT:
name: custom/variable_buffer.gml
type: vector
SEGMENTS: 5
results:
OUTPUT:
name: expected/variable_buffer_points_dissolved.gml
type: vector
compare:
geometry:
precision: 5
normalize: True
fields:
id: skip
id2: skip
fid: skip
- algorithm: native:adduniquevalueindexfield
name: add unique field based on another field
params:
FIELD: id2
INPUT:
name: points.gml
type: vector
results:
OUTPUT:
name: expected/add_unique_field.gml
type: vector
- algorithm: native:adduniquevalueindexfield
name: Add unique field summary
params:
FIELD: id2
FIELD_NAME: classes
INPUT:
name: points.gml
type: vector
results:
SUMMARY_OUTPUT:
name: expected/add_unique_field_summary.gml
type: vector
compare:
fields:
fid: skip
pk:
- id2
- algorithm: qgis:linestopolygons
name: convert lines to polygon
params:
INPUT:
name: lines.gml
type: vector
results:
OUTPUT:
name: expected/lines_to_polygon.gml
type: vector
- algorithm: native:snappointstogrid
name: Gridify polys
params:
INPUT:
name: polys.gml
type: vector
HSPACING: 2
VSPACING: 2
results:
OUTPUT:
name: expected/gridify_polys.gml
type: vector
- algorithm: native:snappointstogrid
name: Gridify lines
params:
INPUT:
name: lines.gml
type: vector
HSPACING: 2
VSPACING: 2
results:
OUTPUT:
name: expected/gridify_lines.gml
type: vector
- algorithm: qgis:distancetonearesthubpoints
name: Hub distance points
params:
INPUT:
name: points.gml
type: vector
HUBS:
name: custom/hub_points.gml
type: vector
FIELD: name
UNIT: 0
results:
OUTPUT:
name: expected/hub_distance_points.gml
type: vector
- algorithm: qgis:distancetonearesthublinetohub
name: Hub distance lines
params:
INPUT:
name: points.gml
type: vector
HUBS:
name: custom/hub_points.gml
type: vector
FIELD: name
UNIT: 0
results:
OUTPUT:
name: expected/hub_distance_lines.gml
type: vector
- algorithm: native:hublines
name: Hub lines
params:
HUBS:
name: points.gml
type: vector
SPOKES:
name: custom/spoke_points.gml
type: vector
HUB_FIELD: id
SPOKE_FIELD: id
results:
OUTPUT:
name: expected/hub_lines.gml
type: vector
- algorithm: native:hublines
name: Hub lines (with polygons)
params:
HUBS:
name: dissolve_polys.gml
type: vector
HUB_FIELD: intval
SPOKES:
name: points.gml
type: vector
SPOKE_FIELD: id
results:
OUTPUT:
name: expected/hub_lines_to_poly.gml
type: vector
compare:
fields:
fid: skip
fid_2: skip
- algorithm: native:hublines
name: Hub lines ( with z )
params:
HUBS:
name: multipoints.gml
type: vector
HUB_FIELD: d
SPOKES:
name: pointsz.gml
type: vector
SPOKE_FIELD: elev
results:
OUTPUT:
name: expected/hub_lines_multi_to_z.gml
type: vector
compare:
fields:
fid: skip
fid_2: skip
- algorithm: native:hublines
name: Hub lines subset of fields
params:
HUBS:
name: points.gml
type: vector
HUB_FIELD: id
HUB_FIELDS:
- id
- id2
SPOKES:
name: custom/spoke_points.gml
type: vector
SPOKE_FIELD: id
SPOKE_FIELDS:
- name
results:
OUTPUT:
name: expected/hub_lines_field_subset.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:hublines
name: Hub lines geodesic
ellipsoid: GRS80
project_crs: EPSG:4326
params:
ANTIMERIDIAN_SPLIT: false
GEODESIC: true
GEODESIC_DISTANCE: 1000.0
HUBS:
name: custom/geodesic_hub.shp
type: vector
HUB_FIELD: id
SPOKES:
name: custom/geodesic_spoke.shp
type: vector
SPOKE_FIELD: id
results:
OUTPUT:
name: expected/geodesic_hub_no_split.shp
type: vector
compare:
geometry:
precision: 2
- algorithm: native:hublines
name: Hub lines, geodesic, split
ellipsoid: GRS80
project_crs: EPSG:4326
params:
ANTIMERIDIAN_SPLIT: true
GEODESIC: true
GEODESIC_DISTANCE: 1000.0
HUBS:
name: custom/geodesic_hub.shp
type: vector
HUB_FIELD: id
SPOKES:
name: custom/geodesic_spoke.shp
type: vector
SPOKE_FIELD: id
results:
OUTPUT:
name: expected/geodesic_hub_split.shp
type: vector
compare:
geometry:
precision: 2
- algorithm: qgis:pointstopath
name: Points to path (non grouped)
params:
INPUT:
name: points.gml
type: vector
ORDER_FIELD: id
results:
OUTPUT:
name: expected/points_to_path.gml
type: vector
compare:
fields:
fid: skip
- algorithm: qgis:pointstopath
name: Points to path (grouped)
params:
INPUT:
name: points.gml
type: vector
ORDER_FIELD: id
GROUP_FIELD: id2
results:
OUTPUT:
name:
- expected/points_to_path_grouped.gml
type: vector
pk: id2
compare:
fields:
fid: skip
- algorithm: qgis:pointstopath
name: Points to path (close path)
params:
ORDER_FIELD: id
CLOSE_PATH: true
INPUT:
name: points.gml
type: vector
results:
OUTPUT:
name: expected/points_to_path_close_path.gml
type: vector
compare:
fields:
fid: skip
- algorithm: native:joinattributestable
name: join the attribute table by common field (one-to-one)
params:
INPUT:
name: points.gml
type: vector
INPUT_2:
name: table.dbf
type: table
FIELD: id
FIELD_2: ID
results:
OUTPUT:
name: expected/join_attribute_table.gml
type: vector
- algorithm: native:joinattributestable
name: Join with prefix
params:
DISCARD_NONMATCHING: false
FIELD: id
FIELD_2: ID
INPUT:
name: points.gml
type: vector
INPUT_2:
name: table.dbf
type: vector
METHOD: 1
PREFIX: j_
results:
OUTPUT:
name: expected/join_attributes_with_prefix.gml
type: vector
- algorithm: native:joinattributestable
name: join the attribute table by common field, discard non matching (one-to-one)
params:
METHOD: 1
INPUT:
name: points.gml
type: vector
INPUT_2:
name: table2.dbf
type: table
FIELD: id
FIELD_2: ID
DISCARD_NONMATCHING: true
results:
OUTPUT:
name: expected/join_attribute_table_discard_nonmatching.gml
type: vector
- algorithm: native:joinattributestable
name: join the attribute table by common field (one-to-many)
params:
METHOD: 0
INPUT:
name: points.gml
type: vector
INPUT_2:
name: table.dbf
type: table
FIELD: id
FIELD_2: ID
results:
OUTPUT:
name: expected/join_attribute_table_all_match.gml
type: vector
- algorithm: native:joinattributestable
name: Join attributes table with subset of fields
params:
FIELD: id
FIELDS_TO_COPY:
- NUM_A
FIELD_2: ID
INPUT:
name: points.gml
type: vector
INPUT_2:
name: table.dbf
type: vector
results:
OUTPUT:
name: expected/join_attribute_table_subset.gml
type: vector
- algorithm: native:joinattributestable
name: Join attributes table, saving unjoinable features
params:
DISCARD_NONMATCHING: false
FIELD: id
FIELD_2: ID
INPUT:
name: points.gml
type: vector
INPUT_2:
name: table2.dbf
type: vector
METHOD: 1
PREFIX: ''
results:
NON_MATCHING:
name: expected/join_attribute_table_unjoinable.gml
type: vector
- algorithm: native:shortestpathpointtopoint
name: Shortest path (point to point, shortest route)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINT: 1003712.4162500285,6222484.5571899945 [EPSG:32733]
INPUT:
name: roads.gml
type: vector
START_POINT: 1000997.5971978485,6220343.83965781 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/shortest.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
fid: skip
- algorithm: native:shortestpathpointtopoint
name: Shortest path (point to point, fastest route)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINT: 1003731.877318503,6222474.826655758 [EPSG:32733]
INPUT:
name: roads.gml
type: vector
SPEED_FIELD: SPEED
START_POINT: 1000997.5971978485,6220324.378589335 [EPSG:32733]
STRATEGY: 1
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/fastest.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
fid: skip
- algorithm: native:shortestpathpointtopoint
name: Shortest path (point to point, start point too far from network)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINT: 1003712.4162500285,6222484.5571899945 [EPSG:32733]
INPUT:
name: roads.gml
type: vector
START_POINT: 1000997.5971978485,6220343.83965781 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
POINT_TOLERANCE: 4
results:
OUTPUT:
name: none
type: vector
expectedException: true
- algorithm: native:shortestpathpointtopoint
name: Shortest path (point to point, end point too far from network)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINT: 1003842.4162500285,6222484.5571899945 [EPSG:32733]
INPUT:
name: roads.gml
type: vector
START_POINT: 1000997.5971978485,6220343.83965781 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
POINT_TOLERANCE: 14
results:
OUTPUT:
name: none
type: vector
expectedException: true
- algorithm: native:shortestpathlayertopoint
name: Shortest path layer to point
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINT: 1004160.8843928401,6223198.426763908 [EPSG:32733]
INPUT:
name: roads.gml
type: vector
START_POINTS:
name: custom/route_points.gml
type: vector
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/shortest_path_layer_to_point.shp
type: vector
compare:
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
- algorithm: native:shortestpathpointtolayer
name: Shortest path point to layer
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINTS:
name: custom/route_points.gml
type: vector
INPUT:
name: roads.gml
type: vector
START_POINT: 1001285.5030045575,6219636.580449594 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/shortest_path_point_to_layer.shp
type: vector
compare:
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
- algorithm: native:shortestpathpointtolayer
name: Shortest path point to layer, start point too far
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINTS:
name: custom/route_points.gml
type: vector
INPUT:
name: roads.gml
type: vector
START_POINT: 1001348.035822,6220968.188367 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
POINT_TOLERANCE: 5
results:
OUTPUT:
name: name
type: vector
expectedException: true
- algorithm: native:shortestpathpointtolayer
name: Shortest path point to layer, point tolerance
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
END_POINTS:
name: custom/route_points.gml|layername=route_points
type: vector
INPUT:
name: roads.gml|layername=roads
type: vector
POINT_TOLERANCE: 5.0
START_POINT: 1002012.240911,6221530.729412 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/shortest_path_point_to_layer.gml
type: vector
compare:
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
OUTPUT_NON_ROUTABLE:
name: expected/shortest_path_point_to_layer_non_routable.gml
type: vector
compare:
geometry:
precision: 2
- algorithm: native:shortestpathlayertopoint
name: Shortest path layer to point, end point too far
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 5.0
END_POINT: 1004434.104368,6223344.867804 [EPSG:32733]
INPUT:
name: roads.gml
type: vector
START_POINTS:
name: custom/route_points.gml
type: vector
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
POINT_TOLERANCE: 10
results:
OUTPUT:
name: name
type: vector
expectedException: true
- algorithm: native:shortestpathlayertopoint
name: Shortest path layer to point, with point tolerance
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 3.0
END_POINT: 1004160.8843928401,6223198.426763908 [EPSG:32733]
INPUT:
name: roads.gml|layername=roads
type: vector
POINT_TOLERANCE: 4.5
START_POINTS:
name: custom/route_points.gml|layername=route_points
type: vector
STRATEGY: 0
TOLERANCE: 0.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/shortest_path_layer_to_point_max_point_tolerance.gml
type: vector
compare:
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
OUTPUT_NON_ROUTABLE:
name: expected/shortest_path_layer_to_point_non_routable.gml
type: vector
compare:
geometry:
precision: 2
- algorithm: native:serviceareafrompoint
name: Service area from point (shortest, nodes)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml
type: vector
START_POINT: 1002465.0089601517,6221875.432489508 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 700.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/service_area_from_point_nodes.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
fid: skip
- algorithm: native:serviceareafrompoint
name: Service area from point (shortest, nodes, bounds)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: true
INPUT:
name: roads.gml
type: vector
START_POINT: 1002465.0089601517,6221875.432489508 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 700.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/service_area_from_point_nodes_bounds.gml
type: vector
compare:
geometry:
precision: 3
fields:
fid: skip
- algorithm: native:serviceareafrompoint
name: Service area from point (shortest, lines)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml
type: vector
START_POINT: 1003654.8065293541,6222397.723338357 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 400.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT_LINES:
name: expected/service_area_from_point_lines.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
fid: skip
- algorithm: native:serviceareafrompoint
name: Service area from point (fastest, old parameter)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml|layername=roads
type: vector
START_POINT: 1002424.321122,6221845.996330 [EPSG:32733]
STRATEGY: 1
TOLERANCE: 0.0
TRAVEL_COST: 36
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/service_area_fastest_nodes.gml
type: vector
compare:
geometry:
precision: 3
fields:
fid: skip
OUTPUT_LINES:
name: expected/service_area_fastests_lines.gml
type: vector
compare:
geometry:
precision: 3
fields:
fid: skip
- algorithm: native:serviceareafrompoint
name: Service area from point (fastest, new parameter)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml|layername=roads
type: vector
START_POINT: 1002424.321122,6221845.996330 [EPSG:32733]
STRATEGY: 1
TOLERANCE: 0.0
TRAVEL_COST2: 0.01
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/service_area_fastest_nodes.gml
type: vector
compare:
geometry:
precision: 3
fields:
fid: skip
OUTPUT_LINES:
name: expected/service_area_fastests_lines.gml
type: vector
compare:
geometry:
precision: 3
fields:
fid: skip
- algorithm: native:serviceareafrompoint
name: Service area from point (point too far from network)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml
type: vector
START_POINT: 1002865.0089601517,6221875.432489508 [EPSG:32733]
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 700.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
POINT_TOLERANCE: 5
results:
OUTPUT:
name: name
type: vector
expectedException: true
- algorithm: native:serviceareafromlayer
name: Service area from layer (shortest, nodes)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml
type: vector
START_POINTS:
name: custom/route_points.gml
type: vector
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 700.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/service_area_from_layer_nodes.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
pk:
- d
- type
- algorithm: native:serviceareafromlayer
name: Service area from layer (shortest, nodes, boundary)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: true
INPUT:
name: roads.gml
type: vector
START_POINTS:
name: custom/route_points.gml
type: vector
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 700.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT:
name: expected/service_area_from_layer_nodes_bounds.shp
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
- algorithm: native:serviceareafromlayer
name: Service area from layer (shortest, lines)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml
type: vector
START_POINTS:
name: custom/route_points.gml
type: vector
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST: 700.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT_LINES:
name: expected/service_area_from_layer_lines.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
pk:
- d
- type
- algorithm: native:serviceareafromlayer
name: Service area from layer (shortest, nodes, max distance from network)
ellipsoid: WGS84
params:
DEFAULT_DIRECTION: 2
DEFAULT_SPEED: 50.0
INCLUDE_BOUNDS: false
INPUT:
name: roads.gml|layername=roads
type: vector
POINT_TOLERANCE: 1.0
START_POINTS:
name: custom/route_points.gml|layername=route_points
type: vector
STRATEGY: 0
TOLERANCE: 0.0
TRAVEL_COST2: 100.0
VALUE_BACKWARD: ''
VALUE_BOTH: ''
VALUE_FORWARD: ''
results:
OUTPUT_LINES:
name: expected/service_area_from_layer_lines_tolerance.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
pk:
- d
- type
OUTPUT_NON_ROUTABLE:
name: expected/service_area_from_layer_non_routable_tolerance.gml
type: vector
compare:
ignore_crs_check: true
geometry:
precision: 2
fields:
cost:
precision: 2
start: skip
end: skip
pk:
- d
- algorithm: native:createattributeindex
name: Create attribute index
params:
FIELD: id
INPUT:
name: custom/points.shp
type: vector
in_place: true
results:
INPUT:
name: expected/create_attr_index_points.shp
type: vector
in_place_result: true
- algorithm: native:createspatialindex
name: Create spatial index
params:
INPUT:
name: custom/points.shp
type: vector
in_place: true
results:
INPUT:
name: expected/create_attr_index_points.shp
type: vector
in_place_result: true
- algorithm: native:truncatetable
name: Truncate table
params:
INPUT:
name: custom/points.shp
type: vector
in_place: true
results:
INPUT:
name: expected/truncated.shp
type: vector
in_place_result: true
- algorithm: qgis:distancematrix
name: Distance matrix (only tests for run, does not check result as rows are in random order)
params:
INPUT_FIELD: fid
INPUT:
name: points.gml
type: vector
MATRIX_TYPE: '0'
NEAREST_POINTS: 0
TARGET_FIELD: fid
TARGET:
name: points.gml
type: vector
results:
OUTPUT:
name: expected/count_unique_points.gml
type: vector
compare: false
- algorithm: qgis:countpointsinpolygon
name: standard count unique points in polygon
params:
CLASSFIELD: id2
FIELD: NUMPOINTS
POINTS:
name: points.gml
type: vector
POLYGONS:
name: polys.gml
type: vector
results:
OUTPUT:
name: expected/count_unique_points.gml
type: vector
- algorithm: qgis:countpointsinpolygon
name: standard count points in polygon weighted
params:
FIELD: NUMPOINTS
POINTS:
name: custom/points_weighted.gml
type: vector
POLYGONS:
name: polys.gml
type: vector
WEIGHT: id
results:
OUTPUT:
name: expected/count_points_weighted.gml
type: vector
- algorithm: qgis:pointsalonglines
name: standard points along lines
params:
DISTANCE: 1.0
END_OFFSET: 0.0
INPUT:
name: lines.gml
type: vector
START_OFFSET: 0.0
results:
OUTPUT:
name: expected/points_along_lines.gml
type: vector
- algorithm: native:pointsalonglines
name: Points along lines with start offset
params:
DISTANCE: 1.0
END_OFFSET: 0.0
INPUT:
name: lines.gml|layername=lines
type: vector
START_OFFSET: 1.5
results:
OUTPUT:
name: expected/points_along_lines_start_offset.gml
type: vector
- algorithm: native:pointsalonglines
name: Points along lines with end offset
params:
DISTANCE: 1.0
END_OFFSET: 2.2
INPUT:
name: lines.gml|layername=lines
type: vector
START_OFFSET: 0.0
results:
OUTPUT:
name: expected/points_along_lines_end_offset.gml
type: vector
- algorithm: native:pointsalonglines
name: Points along polygons
params:
DISTANCE: 1.0
END_OFFSET: 0.0
INPUT:
name: polys.gml|layername=polys2
type: vector
START_OFFSET: 0.0
results:
OUTPUT:
name: expected/points_along_polys.gml
type: vector
- algorithm: native:pointsalonglines
name: Points along lines with z
params:
DISTANCE: 1.0
END_OFFSET: 0.0
INPUT:
name: lines_z.shp
type: vector
START_OFFSET: 0.0
results:
OUTPUT:
name: expected/points_along_lines_z.shp
type: vector
- algorithm: native:pointsalonglines
name: Points along lines with m
params:
DISTANCE: 1.0
END_OFFSET: 0.0
INPUT:
name: lines_m.shp
type: vector
START_OFFSET: 0.0
results:
OUTPUT:
name: expected/points_along_lines_m.shp
type: vector
# See ../README.md for a description of the file format