comparison schema/isrs_tests.sql @ 3561:453f15ba8030

Improve error handling in area generation Instead of hitting a NOT NULL constraint later on, raise an error if no candidate area for cutting is found.
author Tom Gottfried <tom@intevation.de>
date Fri, 31 May 2019 16:58:42 +0200
parents d316a6e41f54
children 4c585b5d4fe8
comparison
equal deleted inserted replaced
3560:ec1aec03676d 3561:453f15ba8030
56 ('AT', 'XXX', '00001', '00000', 0)::isrs, 56 ('AT', 'XXX', '00001', '00000', 0)::isrs,
57 ('AT', 'XXX', '00001', '00000', 2)::isrs), 57 ('AT', 'XXX', '00001', '00000', 2)::isrs),
58 5)), 58 5)),
59 'ISRSrange_axis returns a valid simple feature'); 59 'ISRSrange_axis returns a valid simple feature');
60 60
61 SELECT ok( 61 SELECT throws_ok($$
62 ISRSrange_area(ISRSrange_axis(isrsrange( 62 SELECT ISRSrange_area('LINESTRING(0 0, 1 1)', NULL)
63 $$,
64 'P0002', NULL,
65 'ISRSrange_area fails if no input area is given');
66
67 SELECT throws_ok($$
68 SELECT ISRSrange_area(ISRSrange_axis(isrsrange(
63 ('AT', 'XXX', '00001', '00000', 0)::isrs, 69 ('AT', 'XXX', '00001', '00000', 0)::isrs,
64 ('AT', 'XXX', '00001', '00000', 1)::isrs), 70 ('AT', 'XXX', '00001', '00000', 1)::isrs),
65 5), 71 5),
66 ST_SetSRID('POLYGON((0 1, 0 2, 1 2, 1 1, 0 1))'::geometry, 4326) 72 ST_SetSRID('POLYGON((0 1, 0 2, 1 2, 1 1, 0 1))'::geometry, 4326))
67 ) IS NULL, 73 $$,
68 'ISRSrange_area returns NULL, if given area does not intersect with axis'); 74 'P0002', NULL,
75 'ISRSrange_area fails, if given area does not intersect with axis');
69 76
70 SELECT results_eq($$ 77 SELECT results_eq($$
71 SELECT every(ST_DWithin( 78 SELECT every(ST_DWithin(
72 ST_Boundary(ISRSrange_area( 79 ST_Boundary(ISRSrange_area(
73 ISRSrange_axis(isrsrange( 80 ISRSrange_axis(isrsrange(