annotate schema/run_tests.sh @ 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 d316a6e41f54
children 93fa55bce126
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
172
a422471db08a Automate running DB-tests with an extra database
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
1 #!/bin/sh -e
1303
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
2 # This is Free Software under GNU Affero General Public License v >= 3.0
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
3 # without warranty, see README.md and license for details.
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
4 #
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
5 # SPDX-License-Identifier: AGPL-3.0-or-later
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
6 # License-Filename: LICENSES/AGPL-3.0.txt
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
7 #
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
8 # Copyright (C) 2018 by via donau
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
9 # – Österreichische Wasserstraßen-Gesellschaft mbH
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
10 # Software engineering by Intevation GmbH
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
11 #
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
12 # Author(s):
a8d1f2897c42 repair schema install scripts
Bernhard Reiter <bernhard@intevation.de>
parents: 1301
diff changeset
13 # * Tom Gottfried <tom@intevation.de>
172
a422471db08a Automate running DB-tests with an extra database
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
14
a422471db08a Automate running DB-tests with an extra database
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
15 dropdb --if-exists gemma_test
246
299568ad3c37 Use database setup script for tests and Dockerfile
Tom Gottfried <tom@intevation.de>
parents: 234
diff changeset
16
299568ad3c37 Use database setup script for tests and Dockerfile
Tom Gottfried <tom@intevation.de>
parents: 234
diff changeset
17 ./install-db.sh -d gemma_test
183
f3a09fc9c1eb Prepare for having more than one database test script
Tom Gottfried <tom@intevation.de>
parents: 172
diff changeset
18 psql -qv ON_ERROR_STOP= -c 'CREATE EXTENSION pgtap' -d gemma_test
172
a422471db08a Automate running DB-tests with an extra database
Tom Gottfried <tom@intevation.de>
parents:
diff changeset
19
224
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
20 # Collect test roles to be dropped
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
21 # Concatenate with dummy role to prevent syntax error if there is no test role
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
22 TEST_ROLES=$(psql -qtc \
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
23 "SELECT concat_ws(',', 'test', string_agg(rolname, ',')) FROM pg_roles
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
24 WHERE rolname LIKE 'test%'")
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
25
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
26 # Drop test roles, add test data and run tests
222
cfde876fbaf9 Try to DROP ROLEs before creating them and keep test results
Tom Gottfried <tom@intevation.de>
parents: 207
diff changeset
27 psql -qXv ON_ERROR_STOP= -v -d gemma_test \
324
8bacd556ea39 Remove noisy NOTICEs between test output
Tom Gottfried <tom@intevation.de>
parents: 319
diff changeset
28 -c 'SET client_min_messages TO WARNING' \
224
57dfab80973c By convention, prefix all test users with 'test'
Tom Gottfried <tom@intevation.de>
parents: 223
diff changeset
29 -c "DROP ROLE IF EXISTS $TEST_ROLES" \
196
b67208d82543 Make test output more comprehensive
Tom Gottfried <tom@intevation.de>
parents: 185
diff changeset
30 -f tap_tests_data.sql \
2781
a2127495093e Prevent duplicate waterway axis and area geometries
Tom Gottfried <tom@intevation.de>
parents: 2688
diff changeset
31 -c 'SELECT plan(63)' \
a2127495093e Prevent duplicate waterway axis and area geometries
Tom Gottfried <tom@intevation.de>
parents: 2688
diff changeset
32 -f gemma_tests.sql \
569
ad07846b09d1 Add function to construct isrs from text
Tom Gottfried <tom@intevation.de>
parents: 478
diff changeset
33 -f isrs_tests.sql \
196
b67208d82543 Make test output more comprehensive
Tom Gottfried <tom@intevation.de>
parents: 185
diff changeset
34 -f auth_tests.sql \
b67208d82543 Make test output more comprehensive
Tom Gottfried <tom@intevation.de>
parents: 185
diff changeset
35 -f manage_users_tests.sql \
222
cfde876fbaf9 Try to DROP ROLEs before creating them and keep test results
Tom Gottfried <tom@intevation.de>
parents: 207
diff changeset
36 -c 'SELECT * FROM finish()'