1use File::Basename; 2use Cwd 'abs_path'; 3 4my $REGDIR = abs_path(dirname($0)); 5my $RASTERDIR = abs_path($REGDIR . "/../raster/test/regress"); 6my $FILERASTER = $RASTERDIR . "/loader/testraster.tif"; 7 8# special handling for msys 9if (lc($^O) eq "msys") { 10 $FILERASTER = `cmd //c echo "$FILERASTER"`; 11 $FILERASTER =~ s/^\s+//; 12 $FILERASTER =~ s/\s+$//; 13} 14 15my $sql = <<"END"; 16WITH foo AS ( 17 SELECT postgis_raster_lib_version() 18) 19SELECT NULL FROM foo; 20SET postgis.gdal_enabled_drivers = 'GTiff'; 21DROP TABLE IF EXISTS raster_outdb_template; 22CREATE TABLE raster_outdb_template AS 23SELECT 24 1 AS rid, 25 ST_AddBand( -- insert all three bands of out-db raster at index 1 26 ST_MakeEmptyRaster(90, 50, 0., 0., 1, -1, 0, 0, 0), 27 1, '$FILERASTER'::text, NULL::int[] 28 ) AS rast 29UNION ALL 30SELECT 31 2 AS rid, 32 ST_AddBand( -- append all three bands of out-db raster 33 ST_MakeEmptyRaster(90, 50, 0., 0., 1, -1, 0, 0, 0), 34 '$FILERASTER'::text, NULL::int[] 35 ) AS rast 36UNION ALL 37SELECT 38 3 AS rid, 39 ST_AddBand( -- append out-db band 2 40 ST_AddBand( -- in-db band 41 ST_MakeEmptyRaster(90, 50, 0., 0., 1, -1, 0, 0, 0), 42 1, '8BUI', 1, 0 43 ), 44 '$FILERASTER'::text, ARRAY[2]::int[] 45 ) AS rast 46UNION ALL 47SELECT 48 4 AS rid, 49 ST_AddBand( -- append out-db band 2 50 ST_AddBand( -- in-db band 51 ST_MakeEmptyRaster(90, 50, 0., 0., 1, -1, 0, 0, 0), 52 1, '8BUI', 1, 0 53 ), 54 '$FILERASTER'::text, ARRAY[2]::int[], 55 1, 56 255 57 ) AS rast 58END 59 60open(PRESQL, '>', $RASTERDIR . '/' . $TEST . '-pre.sql'); 61print PRESQL $sql; 62close(PRESQL); 63 64# no longer needed as the "clean" test takes care of it 65#open(POSTSQL, '>', $RASTERDIR . '/' . $TEST . '-post.sql'); 66#print POSTSQL "DROP TABLE IF EXISTS raster_outdb_template;\n"; 67#close(POSTSQL); 68