]> granicus.if.org Git - postgis/commitdiff
Numerous enhancements to make torture script generator smarter - e.g. don't use geome...
authorRegina Obe <lr@pcorp.us>
Thu, 18 Dec 2008 15:25:54 +0000 (15:25 +0000)
committerRegina Obe <lr@pcorp.us>
Thu, 18 Dec 2008 15:25:54 +0000 (15:25 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@3441 b70326c6-7e19-0410-871a-916f4a2858ee

doc/xsl/postgis_gardentest.sql.xsl

index ca959e0a9bf74cd413b3b140bbfabe76a6d99dbf..86cc78febf212474b0d67250329c8287b933d14e 100644 (file)
        <xsl:variable name='fnexclude'>ST_CurveToLine AddGeometryColumn DropGeometryColumn DropGeometryTable</xsl:variable>\r
        <!--This is just a place holder to state functions not supported in 1.3 branch -->\r
        <xsl:variable name='fnexclude13'>Populate_Geometry_Columns ST_IsValidReason</xsl:variable>      \r
-       <xsl:variable name='var_srid'>4269</xsl:variable>\r
+       <xsl:variable name='var_srid'>3395</xsl:variable>\r
        <xsl:variable name='var_integer'>5</xsl:variable>\r
        <xsl:variable name='var_float1'>0.5</xsl:variable>\r
        <xsl:variable name='var_float2'>0.75</xsl:variable>\r
-       <xsl:variable name='var_version'>2</xsl:variable>\r
+       <xsl:variable name='var_version'>1</xsl:variable>\r
        <xsl:variable name='var_NDRXDR'>XDR</xsl:variable>\r
        <xsl:variable name='var_text'>'monkey'</xsl:variable>\r
        <xsl:variable name='var_varchar'>'test'</xsl:variable>\r
        <xsl:variable name='var_spheroid'>'SPHEROID["GRS_1980",6378137,298.257222101]'</xsl:variable>\r
+       <xsl:variable name='var_matrix'>'FF1FF0102'</xsl:variable>\r
        <pgis:gardens>\r
                <pgis:gset ID='PointSet' GeometryType='POINT'>(SELECT ST_SetSRID(ST_Point(i,j),4326) As the_geom \r
                FROM generate_series(-10,50,15) As i \r
@@ -113,11 +114,11 @@ SELECT 'create,insert,drop Test: Start Testing Multi/<xsl:value-of select="@Geom
                                <xsl:variable name='fnargs'><xsl:call-template name="listparams"><xsl:with-param name="func" select="." /></xsl:call-template></xsl:variable>\r
 <!-- For each function prototype generate a test sql statement -->\r
 <xsl:choose>\r
-<!--Test functions that take no arguments -->\r
-       <xsl:when test="count(paramdef/parameter) = 0 and not(contains($fnexclude,@id))">SELECT  'Starting <xsl:value-of select="funcdef/function" />()';BEGIN; \r
-SELECT  <xsl:value-of select="funcdef/function" />();\r
+<!--Test functions that take no arguments or take no geometries -->\r
+       <xsl:when test="(count(paramdef/parameter) = 0 or not(contains(paramdef[1]/type,'geometry') or contains(paramdef[2]/type,'geometry') or contains(paramdef[1]/parameter,'WKT') or contains(paramdef[1]/type,'box') or contains(paramdef[1]/type,'bytea'))) and not(contains($fnexclude,funcdef/function))">SELECT  'Starting <xsl:value-of select="funcdef/function" />(<xsl:value-of select="$fnargs" />)';BEGIN; \r
+SELECT  <xsl:value-of select="funcdef/function" />(<xsl:value-of select="$fnfakeparams" />);\r
 COMMIT;\r
-SELECT  'Ending <xsl:value-of select="funcdef/function" />()';\r
+SELECT  'Ending <xsl:value-of select="funcdef/function" />(<xsl:value-of select="$fnargs" />)';\r
        </xsl:when>\r
 <!--Start Test aggregate and unary functions -->\r
 <!--Garden Aggregator/Unary function with input gsets test -->\r
@@ -202,12 +203,16 @@ SELECT '<xsl:value-of select="$fnname" /><xsl:text> </xsl:text> <xsl:value-of se
                </xsl:for-each>\r
        </xsl:template>\r
        \r
+       <!--macro to replace func args with dummy var args -->\r
        <!--macro to replace func args with dummy var args -->\r
        <xsl:template name="replaceparams">\r
                <xsl:param name="func" />\r
                <xsl:for-each select="$func">\r
                        <xsl:for-each select="paramdef">\r
                                <xsl:choose>\r
+                                       <xsl:when test="contains(parameter, 'matrix') or contains(parameter, 'Matrix')"> \r
+                                               <xsl:value-of select="$var_matrix" />\r
+                                       </xsl:when>\r
                                        <xsl:when test="contains(parameter, 'srid')"> \r
                                                <xsl:value-of select="$var_srid" />\r
                                        </xsl:when>\r
@@ -217,11 +222,17 @@ SELECT '<xsl:value-of select="$fnname" /><xsl:text> </xsl:text> <xsl:value-of se
                                        <xsl:when test="contains(parameter, 'version')"> \r
                                                <xsl:value-of select="$var_version" />\r
                                        </xsl:when>\r
+                                       <xsl:when test="contains(type,'box') and position() = 1"> \r
+                                               <xsl:text>foo1.the_geom</xsl:text>\r
+                                       </xsl:when>\r
                                        <xsl:when test="contains(type,'box')"> \r
+                                               <xsl:text>foo2.the_geom</xsl:text>\r
+                                       </xsl:when>\r
+                                       <xsl:when test="(type = 'geometry' or type = 'geometry ') and position() = 1"> \r
                                                <xsl:text>foo1.the_geom</xsl:text>\r
                                        </xsl:when>\r
                                        <xsl:when test="type = 'geometry' or type = 'geometry '"> \r
-                                               <xsl:text>foo1.the_geom</xsl:text>\r
+                                               <xsl:text>foo2.the_geom</xsl:text>\r
                                        </xsl:when>\r
                                        <xsl:when test="contains(type, 'geometry[]')"> \r
                                                ARRAY[foo2.the_geom]\r