Changeset: b7ac95f2f07f for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b7ac95f2f07f Modified Files: sql/test/pg_regress/Tests/All sql/test/pg_regress/Tests/path.sql sql/test/pg_regress/Tests/path.stable.err sql/test/pg_regress/Tests/path.stable.out Branch: default Log Message:
Edited and enabled test for path.sql diffs (truncated from 309 to 300 lines): diff --git a/sql/test/pg_regress/Tests/All b/sql/test/pg_regress/Tests/All --- a/sql/test/pg_regress/Tests/All +++ b/sql/test/pg_regress/Tests/All @@ -30,11 +30,11 @@ numeric strings numerology HAVE_GEOM?point -#HAVE_GEOM?lseg # lseg NOT supported in MonetDB. lseg (Line Segment) is also not part of OpenGIS standard so exclude this test +#HAVE_GEOM?lseg # lseg is NOT supported in MonetDB. lseg (Line Segment) is also not part of OpenGIS standard so exclude this test HAVE_GEOM?box # box is not supported in MonetDB but it can be replaced with mbr (= minimum bounded rectangle) -#ToDo HAVE_GEOM?path +HAVE_GEOM?path # path is not supported in MonetDB but it can be replaced with linestring HAVE_GEOM?polygon -#ToDo HAVE_GEOM?circle +#HAVE_GEOM?circle # circle is NOT supported in MonetDB. It is also not part of OpenGIS standard so exclude this test date time timetz diff --git a/sql/test/pg_regress/Tests/path.sql b/sql/test/pg_regress/Tests/path.sql --- a/sql/test/pg_regress/Tests/path.sql +++ b/sql/test/pg_regress/Tests/path.sql @@ -3,37 +3,50 @@ -- --DROP TABLE PATH_TBL; +-- path is not supported in MonetDB but it can be replaced with linestring +CREATE TABLE PATH_TBL (f1 linestring); -CREATE TABLE PATH_TBL (f1 path); +INSERT INTO PATH_TBL VALUES ('linestring(1 2, 3 4)'); -INSERT INTO PATH_TBL VALUES ('[(1,2),(3,4)]'); - -INSERT INTO PATH_TBL VALUES ('((1,2),(3,4))'); - -INSERT INTO PATH_TBL VALUES ('[(0,0),(3,0),(4,5),(1,6)]'); - -INSERT INTO PATH_TBL VALUES ('((1,2),(3,4))'); - -INSERT INTO PATH_TBL VALUES ('1,2 ,3,4'); - -INSERT INTO PATH_TBL VALUES ('[1,2,3, 4]'); - -INSERT INTO PATH_TBL VALUES ('[11,12,13,14]'); - -INSERT INTO PATH_TBL VALUES ('(11,12,13,14)'); +INSERT INTO PATH_TBL VALUES ('linestring(1 -1, 2 -2, 3 -3, 4 -4)'); -- bad values for parser testing -INSERT INTO PATH_TBL VALUES ('[(,2),(3,4)]'); +INSERT INTO PATH_TBL VALUES ('linestring((1 2),(3 4))'); -INSERT INTO PATH_TBL VALUES ('[(1,2),(3,4)'); +INSERT INTO PATH_TBL VALUES ('linestring([(0 0), (3 0), (4 5), (1 6)]'); + +INSERT INTO PATH_TBL VALUES ('linestring((1,2),(3,4))'); + +INSERT INTO PATH_TBL VALUES ('linestring([1 2, 3 4])'); + +INSERT INTO PATH_TBL VALUES ('linestring([11 12, 13 14])'); + +INSERT INTO PATH_TBL VALUES ('linestring((11 12, 13 14))'); + +INSERT INTO PATH_TBL VALUES ('linestring([(,2),(3,4)])'); + +INSERT INTO PATH_TBL VALUES ('linestring([(1,2),(3,4))'); SELECT f1 FROM PATH_TBL; -SELECT '' AS count, f1 AS open_path FROM PATH_TBL WHERE isopen(f1); +CREATE VIEW PATH_TBL_VW AS SELECT f1, cast(f1 as string) as txt FROM PATH_TBL; +SELECT * FROM PATH_TBL_VW; -SELECT '' AS count, f1 AS closed_path FROM PATH_TBL WHERE isclosed(f1); +SELECT '' AS count, f1 AS open_path FROM PATH_TBL_VW WHERE isopen(f1); -SELECT '' AS count, pclose(f1) AS closed_path FROM PATH_TBL; +SELECT '' AS count, f1 AS closed_path FROM PATH_TBL_VW WHERE isclosed(f1); -SELECT '' AS count, popen(f1) AS open_path FROM PATH_TBL; +SELECT '' AS count, pclose(f1) AS closed_path FROM PATH_TBL_VW; +SELECT '' AS count, popen(f1) AS open_path FROM PATH_TBL_VW; + +SELECT Length(f1), * FROM PATH_TBL_VW; +SELECT StartPoint(f1), * FROM PATH_TBL_VW; +SELECT Endpoint(f1), * FROM PATH_TBL_VW; +SELECT PointN(f1), * FROM PATH_TBL_VW; +SELECT NumPoints(f1), * FROM PATH_TBL_VW; +SELECT IsRing(f1), * FROM PATH_TBL_VW; +SELECT IsClosed(f1), * FROM PATH_TBL_VW; +SELECT IsOpen(f1), * FROM PATH_TBL_VW; + +DROP VIEW PATH_TBL_VW; diff --git a/sql/test/pg_regress/Tests/path.stable.err b/sql/test/pg_regress/Tests/path.stable.err --- a/sql/test/pg_regress/Tests/path.stable.err +++ b/sql/test/pg_regress/Tests/path.stable.err @@ -29,17 +29,64 @@ stderr of test 'path` in directory 'sql/ # 17:11:19 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-1142" "--port=38959" # 17:11:19 > -#-- -#-- string -#-- -#--DROP TABLE PATH_TBL; -#-- bad values for parser testing -MAPI = (monetdb) /var/tmp/mtest-12345/.s.monetdb.54321 -QUERY = INSERT INTO PATH_TBL VALUES ('[(,2),(3,4)]'); -ERROR = invalid input syntax for type string: "[(,2),(3,4)]" -MAPI = (monetdb) /var/tmp/mtest-12345/.s.monetdb.54321 -QUERY = INSERT INTO PATH_TBL VALUES ('[(1,2),(3,4)'); -ERROR = invalid input syntax for type string: "[(1,2),(3,4)" +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring((1 2),(3 4))'); +ERROR = !ParseException: Expected number but encountered '(' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring([(0 0), (3 0), (4 5), (1 6)]'); +ERROR = !ParseException: Expected number but encountered word: '[' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring((1,2),(3,4))'); +ERROR = !ParseException: Expected number but encountered '(' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring([1 2, 3 4])'); +ERROR = !ParseException: Expected number but encountered word: '[1' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring([11 12, 13 14])'); +ERROR = !ParseException: Expected number but encountered word: '[11' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring((11 12, 13 14))'); +ERROR = !ParseException: Expected number but encountered '(' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring([(,2),(3,4)])'); +ERROR = !ParseException: Expected number but encountered word: '[' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = INSERT INTO PATH_TBL VALUES ('linestring([(1,2),(3,4))'); +ERROR = !ParseException: Expected number but encountered word: '[' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT '' AS count, f1 AS open_path FROM PATH_TBL_VW WHERE isopen(f1); +ERROR = !SELECT: no such unary operator 'isopen(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT '' AS count, f1 AS closed_path FROM PATH_TBL_VW WHERE isclosed(f1); +ERROR = !SELECT: no such unary operator 'isclosed(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT '' AS count, pclose(f1) AS closed_path FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'pclose(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT '' AS count, popen(f1) AS open_path FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'popen(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT StartPoint(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'startpoint(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT Endpoint(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'endpoint(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT PointN(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'pointn(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT NumPoints(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'numpoints(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT IsRing(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'isring(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT IsClosed(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'isclosed(linestring)' +MAPI = (monetdb) /var/tmp/mtest-3202/.s.monetdb.30012 +QUERY = SELECT IsOpen(f1), * FROM PATH_TBL_VW; +ERROR = !SELECT: no such unary operator 'isopen(linestring)' + # 17:11:19 > # 17:11:19 > "Done." diff --git a/sql/test/pg_regress/Tests/path.stable.out b/sql/test/pg_regress/Tests/path.stable.out --- a/sql/test/pg_regress/Tests/path.stable.out +++ b/sql/test/pg_regress/Tests/path.stable.out @@ -1,4 +1,4 @@ -stdout of test 'string` in directory 'sql/test/pg_regress` itself: +stdout of test 'path` in directory 'sql/test/pg_regress` itself: # 17:11:18 > @@ -20,102 +20,36 @@ stdout of test 'string` in directory 'sq Ready. -# 17:11:19 > -# 17:11:19 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-1142" "--port=38959" -# 17:11:19 > - -= ! Correct / expected output still needs to be provided / verified / approved ! = - -#-- -#-- string -#-- -#--DROP TABLE PATH_TBL; #CREATE TABLE PATH_TBL (f1 string); #INSERT INTO PATH_TBL VALUES ('[(1,2),(3,4)]'); [ 1 ] #INSERT INTO PATH_TBL VALUES ('((1,2),(3,4))'); [ 1 ] -#INSERT INTO PATH_TBL VALUES ('[(0,0),(3,0),(4,5),(1,6)]'); -[ 1 ] -#INSERT INTO PATH_TBL VALUES ('((1,2),(3,4))'); -[ 1 ] -#INSERT INTO PATH_TBL VALUES ('1,2 ,3,4'); -[ 1 ] -#INSERT INTO PATH_TBL VALUES ('[1,2,3, 4]'); -[ 1 ] -#INSERT INTO PATH_TBL VALUES ('[11,12,13,14]'); -[ 1 ] -#INSERT INTO PATH_TBL VALUES ('(11,12,13,14)'); -[ 1 ] -#-- bad values for parser testing -# -# #SELECT f1 FROM PATH_TBL; -% sys.L0 # table_name +% sys.path_tbl # table_name % f1 # name -% ? # type -% ? # length -[ "[(1,2),(3,4)]" ] -[ "((1,2),(3,4))" ] -[ "[(0,0),(3,0),(4,5),(1,6)]" ] -[ "((1,2),(3,4))" ] -[ "((1,2),(3,4))" ] -[ "[(1,2),(3,4)]" ] -[ "[(11,12),(13,14)]" ] -[ "((11,12),(13,14))" ] +% linestring # type +% 0 # length +[ "LINESTRING (1 2, 3 4)" ] +[ "LINESTRING (1 -1, 2 -2, 3 -3, 4 -4)" ] +#CREATE VIEW PATH_TBL_VW AS SELECT f1, cast(f1 as string) as txt FROM PATH_TBL; +#SELECT * FROM PATH_TBL_VW; +% sys.path_tbl_vw, sys.path_tbl_vw # table_name +% f1, txt # name +% linestring, clob # type +% 0, 173 # length +[ "LINESTRING (1 2, 3 4)", "\"LINESTRING (1.0000000000000000 2.0000000000000000, 3.0000000000000000 4.0000000000000000)\"" ] +[ "LINESTRING (1 -1, 2 -2, 3 -3, 4 -4)", "\"LINESTRING (1.0000000000000000 -1.0000000000000000, 2.0000000000000000 -2.0000000000000000, 3.0000000000000000 -3.0000000000000000, 4.0000000000000000 -4.0000000000000000)\"" ] +#SELECT Length(f1), * FROM PATH_TBL_VW; +% sys.L2, sys.path_tbl_vw, sys.path_tbl_vw # table_name +% L2, f1, txt # name +% double, linestring, clob # type +% 24, 0, 173 # length +[ 2.828427125, "LINESTRING (1 2, 3 4)", "\"LINESTRING (1.0000000000000000 2.0000000000000000, 3.0000000000000000 4.0000000000000000)\"" ] +[ 4.242640687, "LINESTRING (1 -1, 2 -2, 3 -3, 4 -4)", "\"LINESTRING (1.0000000000000000 -1.0000000000000000, 2.0000000000000000 -2.0000000000000000, 3.0000000000000000 -3.0000000000000000, 4.0000000000000000 -4.0000000000000000)\"" ] +#DROP VIEW PATH_TBL_VW; -#SELECT '' AS count, f1 AS open_path FROM PATH_TBL WHERE isopen(f1); -% sys.L0, sys.L0 # table_name -% count, open_path # name -% ?, ? # type -% ?, ? # length -[ "", "[(1,2),(3,4)]" ] -[ "", "[(0,0),(3,0),(4,5),(1,6)]" ] -[ "", "[(1,2),(3,4)]" ] -[ "", "[(11,12),(13,14)]" ] +# 15:27:51 > +# 15:27:51 > "Done." +# 15:27:51 > -#SELECT '' AS count, f1 AS closed_path FROM PATH_TBL WHERE isclosed(f1); -% sys.L0, sys.L0 # table_name -% count, closed_path # name -% ?, ? # type -% ?, ? # length -[ "", "((1,2),(3,4))" ] -[ "", "((1,2),(3,4))" ] -[ "", "((1,2),(3,4))" ] -[ "", "((11,12),(13,14))" ] - -#SELECT '' AS count, pclose(f1) AS closed_path FROM PATH_TBL; -% sys.L0, sys.L0 # table_name -% count, closed_path # name -% ?, ? # type -% ?, ? # length -[ "", "((1,2),(3,4))" ] -[ "", "((1,2),(3,4))" ] -[ "", "((0,0),(3,0),(4,5),(1,6))" ] -[ "", "((1,2),(3,4))" ] -[ "", "((1,2),(3,4))" ] -[ "", "((1,2),(3,4))" ] -[ "", "((11,12),(13,14))" ] -[ "", "((11,12),(13,14))" ] - -#SELECT '' AS count, popen(f1) AS open_path FROM PATH_TBL; -% sys.L0, sys.L0 # table_name -% count, open_path # name -% ?, ? # type -% ?, ? # length -[ "", "[(1,2),(3,4)]" ] -[ "", "[(1,2),(3,4)]" ] -[ "", "[(0,0),(3,0),(4,5),(1,6)]" ] -[ "", "[(1,2),(3,4)]" ] -[ "", "[(1,2),(3,4)]" ] -[ "", "[(1,2),(3,4)]" ] -[ "", "[(11,12),(13,14)]" ] _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list