diff schema/gemma_tests.sql @ 2781:a2127495093e

Prevent duplicate waterway axis and area geometries Duplicate axis geometries can prevent finding a contiguous axis between two distance marks in the current implementation of ISRSrange_axis(). Although duplicate area geometries did not show to be harmful up to now, they do not seem to be useful and generally duplicate geometries have the potential to make debugging of any geometry processing harder.
author Tom Gottfried <tom@intevation.de>
date Fri, 22 Mar 2019 14:35:32 +0100
parents
children 29ef6d41e4af
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/schema/gemma_tests.sql	Fri Mar 22 14:35:32 2019 +0100
@@ -0,0 +1,33 @@
+-- This is Free Software under GNU Affero General Public License v >= 3.0
+-- without warranty, see README.md and license for details.
+
+-- SPDX-License-Identifier: AGPL-3.0-or-later
+-- License-Filename: LICENSES/AGPL-3.0.txt
+
+-- Copyright (C) 2019 by via donau
+--   – Österreichische Wasserstraßen-Gesellschaft mbH
+-- Software engineering by Intevation GmbH
+
+-- Author(s):
+--  * Tom Gottfried <tom@intevation.de>
+
+--
+-- pgTAP test script for gemma schema definition
+--
+
+SELECT throws_ok($$
+    INSERT INTO waterway.waterway_axis (wtwaxs, objnam) VALUES
+        (ST_GeogFromText('LINESTRING(0 0, 1 1)'), 'test'),
+        (ST_GeogFromText('LINESTRING(0 0, 1 1)'), 'test')
+    $$,
+    23505, NULL,
+    'No duplicate geometries can be inserted into waterway_axis');
+
+SELECT throws_ok($$
+    INSERT INTO waterway.waterway_area (area) VALUES
+        (ST_GeogFromText('POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))')),
+        (ST_GeogFromText('POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))'))
+    $$,
+    23505, NULL,
+    'No duplicate geometries can be inserted into waterway_area');
+