[postgis-commits] svn - r3388 - trunk/doc/xsl
postgis-commits at postgis.refractions.net
postgis-commits at postgis.refractions.net
Fri Dec 12 06:11:16 PST 2008
Author: robe
Date: 2008-12-12 06:11:16 -0800 (Fri, 12 Dec 2008)
New Revision: 3388
Modified:
trunk/doc/xsl/postgis_gardentest.sql.xsl
Log:
Add relationship/ functions that act on 2 geometries tests to the mix
Modified: trunk/doc/xsl/postgis_gardentest.sql.xsl
===================================================================
--- trunk/doc/xsl/postgis_gardentest.sql.xsl 2008-12-12 13:40:50 UTC (rev 3387)
+++ trunk/doc/xsl/postgis_gardentest.sql.xsl 2008-12-12 14:11:16 UTC (rev 3388)
@@ -11,22 +11,24 @@
<xsl:output method="text" />
<pgis:gardens>
<pgis:gset ID='PointSet' GeometryType='POINT'>(SELECT ST_SetSRID(ST_Point(i,j),4326) As the_geom
- FROM generate_series(-60,50,10) As i
+ FROM generate_series(-10,50,10) As i
CROSS JOIN generate_series(40,70, 10) j)</pgis:gset>
<pgis:gset ID='LineSet' GeometryType='LINESTRING'>(SELECT ST_MakeLine(ST_SetSRID(ST_Point(i,j),4326),ST_SetSRID(ST_Point(j,i),4326)) As the_geom
- FROM generate_series(-60,50,10) As i
- CROSS JOIN generate_series(40,70, 10) As j)</pgis:gset>
+ FROM generate_series(-10,50,10) As i
+ CROSS JOIN generate_series(40,70, 10) As j
+ )</pgis:gset>
<pgis:gset ID='PolySet' GeometryType='POLYGON'>(SELECT ST_Buffer(ST_SetSRID(ST_Point(i,j),4326), j) As the_geom
- FROM generate_series(-60,50,10) As i
+ FROM generate_series(-10,50,10) As i
CROSS JOIN generate_series(40,70, 10) As j)</pgis:gset>
<pgis:gset ID='PointMSet' GeometryType='POINTM'>(SELECT ST_SetSRID(ST_MakePointM(i,j,m),4326) As the_geom
- FROM generate_series(-50,50,10) As i
+ FROM generate_series(-10,50,10) As i
CROSS JOIN generate_series(50,70, 20) AS j
CROSS JOIN generate_series(1,2) As m)</pgis:gset>
<pgis:gset ID='LineMSet' GeometryType='LINESTRINGM'>(SELECT ST_MakeLine(ST_SetSRID(ST_MakePointM(i,j,m),4326),ST_SetSRID(ST_MakePointM(j,i,m),4326)) As the_geom
- FROM generate_series(-50,50,10) As i
+ FROM generate_series(-10,50,10) As i
CROSS JOIN generate_series(50,70, 20) As j
- CROSS JOIN generate_series(1,2) As m)</pgis:gset>
+ CROSS JOIN generate_series(1,2) As m
+ )</pgis:gset>
</pgis:gardens>
<xsl:template match='/chapter'>
@@ -68,6 +70,33 @@
</xsl:text>
</xsl:for-each>
</xsl:if>
+
+<!--Garden Relationship/geom2 output function tests -->
+<xsl:if test="(count(paramdef/parameter) = 2 and contains(paramdef[1]/type, 'geometry ') and contains(paramdef[2]/type, 'geometry '))">
+ <xsl:variable name='fnname'><xsl:value-of select="funcdef/function"/></xsl:variable>
+ <xsl:variable name='fndef'><xsl:value-of select="funcdef"/></xsl:variable>
+ <xsl:for-each select="document('')//pgis:gardens/pgis:gset">
+SELECT '<xsl:value-of select="$fnname" /><xsl:text> </xsl:text><xsl:value-of select="@ID" />: Start Testing Multi/<xsl:value-of select="@GeometryType" />';
+BEGIN; <!-- If output is geometry show ewkt rep -->
+ <xsl:choose>
+ <xsl:when test="contains($fndef, 'geometry ')">
+SELECT ST_AsEWKT(<xsl:value-of select="$fnname" />(foo1.the_geom, foo2.the_geom)),
+ ST_AsEWKT(<xsl:value-of select="$fnname" />(ST_Multi(foo1.the_geom), ST_Multi(foo2.the_geom)))
+ </xsl:when>
+ <xsl:otherwise>
+SELECT <xsl:value-of select="$fnname" />(foo1.the_geom, foo2.the_geom),
+ <xsl:value-of select="$fnname" />(ST_Multi(foo1.the_geom), ST_Multi(foo2.the_geom))
+ </xsl:otherwise>
+ </xsl:choose>
+ FROM (<xsl:value-of select="." />) As foo1 CROSS JOIN (<xsl:value-of select="." />) As foo2
+ LIMIT 5;
+COMMIT;
+SELECT '<xsl:value-of select="$fnname" /><xsl:text> </xsl:text> <xsl:value-of select="@ID" />: End Testing Multi/<xsl:value-of select="@GeometryType" />';
+ <xsl:text>
+
+ </xsl:text>
+ </xsl:for-each>
+</xsl:if>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
More information about the postgis-commits
mailing list