Changeset: d094ce4aecf7 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d094ce4aecf7
Modified Files:
        geom/sql/functions/Tests/ST_Collect.test
Branch: geo-update
Log Message:

Expanded ST_Collect test.


diffs (145 lines):

diff --git a/geom/sql/functions/Tests/ST_Collect.test 
b/geom/sql/functions/Tests/ST_Collect.test
--- a/geom/sql/functions/Tests/ST_Collect.test
+++ b/geom/sql/functions/Tests/ST_Collect.test
@@ -37,6 +37,31 @@ FROM (
 ----
 MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 10)), EMPTY, ((30 30, 30 50, 50 
30, 30 30)))
 
+## multi-types
+query T rowsort
+SELECT
+    ST_COLLECT(pgs)
+FROM (
+    VALUES
+        (ST_GeomFromText('MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 10)), 
EMPTY, ((30 30, 30 50, 50 30, 30 30)))')),
+        (ST_GeomFromText('MULTILINESTRING ((10 20, 30 40, 60 40, 10 20), (10 
10, 50 50))')),
+        (ST_GeomFromText('POLYGON((30 30, 30 50, 50 30, 30 30))'))
+) AS REL(pgs)
+----
+GEOMETRYCOLLECTION (MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 10)), 
EMPTY, ((30 30, 30 50, 50 30, 30 30))), MULTILINESTRING ((10 20, 30 40, 60 40, 
10 20), (10 10, 50 50)), POLYGON ((30 30, 30 50, 50 30, 30 30)))
+
+query T rowsort
+SELECT
+    ST_COLLECT(pgs)
+FROM (
+    VALUES
+        (ST_GeomFromText('MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 10)), 
EMPTY, ((30 30, 30 50, 50 30, 30 30)))')),
+        (ST_GeomFromText('MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 
10)))')),
+        (ST_GeomFromText('MULTIPOLYGON( EMPTY )'))
+) AS REL(pgs)
+----
+GEOMETRYCOLLECTION (MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 10)), 
EMPTY, ((30 30,30 50, 50 30, 30 30))), MULTIPOLYGON (((10 10, 30 40, 50 50, 40 
30, 10 10))), MULTIPOLYGON EMPTY)
+
 # per row aggregation
 
 ## points-points 
@@ -59,19 +84,101 @@ MULTIPOINT (1 2, 3 4)
 MULTIPOINT (10 20, 30 40)
 
 ## points-lines
-# TODO
+query T rowsort
+SELECT
+    ST_COLLECT(p1, p2) AS points
+FROM (
+    VALUES
+        (
+            ST_GeomFromText('POINT(1 2)'),
+            ST_GeomFromText('LINESTRING(10 20, 30 40, 60 40, 10 20)')
+        ),
+        (
+            ST_GeomFromText('POINT(10 20)'),
+            ST_GeomFromText('LINESTRING(10 10, 50 50)')
+        )
+) AS REL(p1, p2)
+----
+GEOMETRYCOLLECTION (POINT (1 2), LINESTRING (10 20, 30 40, 60 40, 10 20))
+GEOMETRYCOLLECTION (POINT (10 20), LINESTRING (10 10, 50 50))
 
 ## points-polygons
-# TODO
+query T rowsort
+SELECT
+    ST_COLLECT(p1, p2) AS points
+FROM (
+    VALUES
+        (
+            ST_GeomFromText('POINT(1 2)'),
+            ST_GeomFromText('POLYGON( EMPTY )')
+        ),
+        (
+            ST_GeomFromText('POINT(10 20)'),
+            ST_GeomFromText('POLYGON((10 10, 30 40, 50 50, 40 30, 10 10))')
+        )
+) AS REL(p1, p2)
+----
+GEOMETRYCOLLECTION (POINT(1 2), POLYGON EMPTY)
+GEOMETRYCOLLECTION (POINT (10 20), POLYGON ((30 40, 50 50, 40 30, 10 10, 30 
40)))
 
 ## lines-lines
-# TODO
+query T rowsort
+SELECT
+    ST_COLLECT(p1, p2) AS points
+FROM (
+    VALUES
+        (
+            ST_GeomFromText('LINESTRING(0 0, 30 30, 40 40)'),
+            ST_GeomFromText('LINESTRING(10 20, 30 40, 60 40, 10 20)')
+        ),
+        (
+            ST_GeomFromText('LINESTRING(10 20, 30 40, 60 40, 10 20)'),
+            ST_GeomFromText('LINESTRING(10 10, 50 50)')
+        )
+) AS REL(p1, p2)
+----
+MULTILINESTRING ((0 0, 30 30, 40 40), (10 20, 30 40, 60 40, 10 20))
+MULTILINESTRING ((10 20, 30 40, 60 40, 10 20), (10 10, 50 50))
 
 ## lines-polygons
-# TODO
+query T rowsort
+SELECT
+    ST_COLLECT(p1, p2) AS points
+FROM (
+    VALUES
+        (
+            ST_GeomFromText('LINESTRING(0 0, 30 30, 40 40)'),
+            ST_GeomFromText('POLYGON( EMPTY )')
+        ),
+        (
+            ST_GeomFromText('LINESTRING(10 20, 30 40, 60 40, 10 20)'),
+            ST_GeomFromText('POLYGON((10 10, 30 40, 50 50, 40 30, 10 10))')
+        ),
+        (
+            ST_GeomFromText('LINESTRING(0 0, 1 1)'),
+            ST_GeomFromText('POLYGON((10 10, 30 40, 50 50, 40 30, 10 10))')
+        )
+) AS REL(p1, p2)
+----
+GEOMETRYCOLLECTION (LINESTRING (0 0, 30 30, 40 40), POLYGON EMPTY)
+GEOMETRYCOLLECTION (LINESTRING (10 20, 30 40, 60 40, 10 20), POLYGON ((10 10, 
30 40, 50 50, 40 30, 10 10)))
+GEOMETRYCOLLECTION (LINESTRING (0 0, 1 1), POLYGON ((10 10, 30 40, 50 50, 40 
30, 10 10)))
 
 ## polygons-polygons
-# TODO
-
-## what about multi-types
-
+query T rowsort
+SELECT
+    ST_COLLECT(p1, p2) AS points
+FROM (
+    VALUES
+        (
+            ST_GeomFromText('POLYGON((10 10, 30 40, 50 50, 40 30, 10 10))'),
+            ST_GeomFromText('POLYGON( EMPTY )')
+        ),
+        (
+            ST_GeomFromText('POLYGON((30 30, 30 50, 50 30, 30 30))'),
+            ST_GeomFromText('POLYGON((30 20, 40 50, 50 30, 50 50, 30 20))')
+        )
+) AS REL(p1, p2)
+----
+MULTIPOLYGON (((10 10, 30 40, 50 50, 40 30, 10 10)), EMPTY)
+MULTIPOLYGON (((30 30, 30 50, 50 30, 30 30)), ((30 20, 40 50, 50 30, 50 50, 30 
20)))
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to