1SET client_min_messages TO error; 2SELECT 'Starting up MapServer/Geoserver tests...'; 3-- Set up the data table 4SELECT 'Setting up the data table...'; 5CREATE TABLE wmstest ( id INTEGER, pt GEOMETRY(Polygon,4326) ); 6INSERT INTO wmstest SELECT lon * 100 + lat AS id, st_setsrid(st_buffer(st_makepoint(lon, lat),1.0),4326) AS pt 7FROM (select lon, generate_series(-80,80, 5) AS lat FROM (SELECT generate_series(-175, 175, 5) AS lon) AS sq1) AS sq2; 8--INSERT INTO geometry_columns (f_table_catalog, f_table_schema, f_table_name, f_geometry_column, coord_dimension, srid, type) VALUES ('', 'public','wmstest','pt',2,4326,'POLYGON'); 9ALTER TABLE wmstest add PRIMARY KEY ( id ); 10CREATE INDEX wmstest_geomidx ON wmstest using gist ( pt ); 11 12-- Geoserver 2.0 NG tests 13SELECT 'Running Geoserver 2.0 NG tests...'; 14-- Run a Geoserver 2.0 NG metadata query 15SELECT 'Geoserver1', upper(TYPE) As TYPE FROM GEOMETRY_COLUMNS WHERE F_TABLE_SCHEMA = 'public' AND F_TABLE_NAME = 'wmstest' AND F_GEOMETRY_COLUMN = 'pt'; 16SELECT 'Geoserver2', SRID FROM GEOMETRY_COLUMNS WHERE F_TABLE_SCHEMA = 'public' AND F_TABLE_NAME = 'wmstest' AND F_GEOMETRY_COLUMN = 'pt'; 17-- Run a Geoserver 2.0 NG WMS query 18SELECT 'Geoserver3', "id",substr(encode(ST_AsBinary(ST_Force2D("pt"),'XDR'),'base64'),0,16) as "pt" FROM "public"."wmstest" WHERE "pt" && ST_GeomFromText('POLYGON ((-6.58216065979069 -0.7685569763184591, -6.58216065979069 0.911225433349509, -3.050569931030911 0.911225433349509, -3.050569931030911 -0.7685569763184591, -6.58216065979069 -0.7685569763184591))', 4326); 19-- Run a Geoserver 2.0 NG KML query 20SELECT 'Geoserver4', count(*) FROM "public"."wmstest" WHERE "pt" && ST_GeomFromText('POLYGON ((-1.504017942347938 24.0332272532341, -1.504017942347938 25.99364254836741, 1.736833353559741 25.99364254836741, 1.736833353559741 24.0332272532341, -1.504017942347938 24.0332272532341))', 4326); 21SELECT 'Geoserver5', "id",substr(encode(ST_AsBinary(ST_Force2D("pt"),'XDR'),'base64'),0,16) as "pt" FROM "public"."wmstest" WHERE "pt" && ST_GeomFromText('POLYGON ((-1.504017942347938 24.0332272532341, -1.504017942347938 25.99364254836741, 1.736833353559741 25.99364254836741, 1.736833353559741 24.0332272532341, -1.504017942347938 24.0332272532341))', 4326); 22SELECT 'Geoserver6', "id",substr(encode(ST_AsBinary(ST_Force2D("pt"),'XDR'),'base64'),0,16) as "pt" FROM "public"."wmstest" WHERE "pt" && ST_GeomFromText('POLYGON ((-1.507182836191598 24.031312785172446, -1.507182836191598 25.995557016429064, 1.7399982474034008 25.995557016429064, 1.7399982474034008 24.031312785172446, -1.507182836191598 24.031312785172446))', 4326); 23 24-- MapServer 5.4 tests 25select 'MapServer1', attname from pg_attribute, pg_constraint, pg_class where pg_constraint.conrelid = pg_class.oid and pg_class.oid = pg_attribute.attrelid and pg_constraint.contype = 'p' and pg_constraint.conkey[1] = pg_attribute.attnum and pg_class.relname = 'wmstest' and pg_table_is_visible(pg_class.oid) and pg_constraint.conkey[2] is null; 26select 'MapServer2', "id",substr(encode(ST_AsBinary(ST_ForceCollection(ST_Force2D("pt")),'NDR'),'base64'),0,16) as geom,"id" from wmstest where pt && ST_GeomFromText('POLYGON((-98.5 32,-98.5 39,-91.5 39,-91.5 32,-98.5 32))',find_srid('','wmstest','pt')) order by "id"; 27 28-- MapServer 5.6 tests 29select * from wmstest where false limit 0; 30select 'MapServer3', attname from pg_attribute, pg_constraint, pg_class where pg_constraint.conrelid = pg_class.oid and pg_class.oid = pg_attribute.attrelid and pg_constraint.contype = 'p' and pg_constraint.conkey[1] = pg_attribute.attnum and pg_class.relname = 'wmstest' and pg_table_is_visible(pg_class.oid) and pg_constraint.conkey[2] is null; 31select 'MapServer4', "id",substr(encode(ST_AsBinary(ST_ForceCollection(ST_Force2D("pt")),'NDR'),'hex'),0,16) as geom,"id" from wmstest where pt && ST_GeomFromText('POLYGON((-98.5 32,-98.5 39,-91.5 39,-91.5 32,-98.5 32))',find_srid('','wmstest','pt')) order by "id"; 32 33-- Drop the data table 34SELECT 'Removing the data table...'; 35DROP TABLE wmstest; 36--DELETE FROM geometry_columns WHERE f_table_name = 'wmstest' AND f_table_schema = 'public'; 37SELECT 'Done.'; 38