Check-in Differences
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Difference From 2e2324b9142e8b21 To f5bab7c5b0381297

2012-03-12
12:14
implementing ST_Expand, ST_NDims, ST_NPoints and ST_NRings SQL functions check-in: 80d416847c user: sandro tags: trunk
10:59
Add a few more GML tests. check-in: f5bab7c5b0 user: bradh tags: trunk
07:04
Add extra tests for geos conversion. check-in: f075ef971e user: bradh tags: trunk
04:57
Add more tests for FGF, and some tests for non-SQL functions in gg_relations check-in: 2e2324b914 user: bradh tags: trunk
2012-03-08
10:46
Add basic tests for AsFGF() SQL function check-in: c4561aa3c7 user: bradh tags: trunk

Changes to test/Makefile.am.

    29     29   		check_virtualtable4 \
    30     30   		check_virtualtable5 \
    31     31   		check_virtualtable6 \
    32     32   		check_mbrcache \
    33     33   		check_spatialindex \
    34     34   		check_exif \
    35     35   		check_relations_fncts \
    36         -		check_extra_relations_fncts
           36  +		check_extra_relations_fncts \
           37  +		check_geoscvt_fncts
    37     38   
    38     39   AM_CFLAGS = -I@srcdir@/../src/headers
    39     40   AM_LDFLAGS = -L../src -lspatialite -lm $(GCOV_FLAGS)
    40     41   
    41     42   TESTS = $(check_PROGRAMS)
    42     43   
    43     44   MOSTLYCLEANFILES = *.gcna *.gcno *.gcda

Changes to test/Makefile.in.

     1         -# Makefile.in generated by automake 1.11.1 from Makefile.am.
            1  +# Makefile.in generated by automake 1.11.3 from Makefile.am.
     2      2   # @configure_input@
     3      3   
     4      4   # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
     5         -# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
     6         -# Inc.
            5  +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
            6  +# Foundation, Inc.
     7      7   # This Makefile.in is free software; the Free Software Foundation
     8      8   # gives unlimited permission to copy and/or distribute it,
     9      9   # with or without modifications, as long as this notice is preserved.
    10     10   
    11     11   # This program is distributed in the hope that it will be useful,
    12     12   # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
    13     13   # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
................................................................................
    46     46   	check_extension$(EXEEXT) check_recover_geom$(EXEEXT) \
    47     47   	check_sql_stmt$(EXEEXT) check_virtualtable1$(EXEEXT) \
    48     48   	check_virtualtable2$(EXEEXT) check_virtualtable3$(EXEEXT) \
    49     49   	check_virtualtable4$(EXEEXT) check_virtualtable5$(EXEEXT) \
    50     50   	check_virtualtable6$(EXEEXT) check_mbrcache$(EXEEXT) \
    51     51   	check_spatialindex$(EXEEXT) check_exif$(EXEEXT) \
    52     52   	check_relations_fncts$(EXEEXT) \
    53         -	check_extra_relations_fncts$(EXEEXT)
           53  +	check_extra_relations_fncts$(EXEEXT) \
           54  +	check_geoscvt_fncts$(EXEEXT)
    54     55   subdir = test
    55     56   DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
    56     57   ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
    57     58   am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
    58     59   	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
    59     60   	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
    60     61   	$(top_srcdir)/configure.ac
................................................................................
    99    100   check_gaia_util_LDADD = $(LDADD)
   100    101   check_geom_aux_SOURCES = check_geom_aux.c
   101    102   check_geom_aux_OBJECTS = check_geom_aux.$(OBJEXT)
   102    103   check_geom_aux_LDADD = $(LDADD)
   103    104   check_geometry_cols_SOURCES = check_geometry_cols.c
   104    105   check_geometry_cols_OBJECTS = check_geometry_cols.$(OBJEXT)
   105    106   check_geometry_cols_LDADD = $(LDADD)
          107  +check_geoscvt_fncts_SOURCES = check_geoscvt_fncts.c
          108  +check_geoscvt_fncts_OBJECTS = check_geoscvt_fncts.$(OBJEXT)
          109  +check_geoscvt_fncts_LDADD = $(LDADD)
   106    110   check_init_SOURCES = check_init.c
   107    111   check_init_OBJECTS = check_init.$(OBJEXT)
   108    112   check_init_LDADD = $(LDADD)
   109    113   check_init2_SOURCES = check_init2.c
   110    114   check_init2_OBJECTS = check_init2.$(OBJEXT)
   111    115   check_init2_LDADD = $(LDADD)
   112    116   check_math_funcs_SOURCES = check_math_funcs.c
................................................................................
   184    188   CCLD = $(CC)
   185    189   LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
   186    190   	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
   187    191   	$(LDFLAGS) -o $@
   188    192   SOURCES = check_create.c check_dbf_load.c check_endian.c check_exif.c \
   189    193   	check_extension.c check_extra_relations_fncts.c check_fdo1.c \
   190    194   	check_fdo2.c check_fdo3.c check_gaia_utf8.c check_gaia_util.c \
   191         -	check_geom_aux.c check_geometry_cols.c check_init.c \
   192         -	check_init2.c check_math_funcs.c check_mbrcache.c \
          195  +	check_geom_aux.c check_geometry_cols.c check_geoscvt_fncts.c \
          196  +	check_init.c check_init2.c check_math_funcs.c check_mbrcache.c \
   193    197   	check_recover_geom.c check_relations_fncts.c check_shp_load.c \
   194    198   	check_shp_load_3d.c check_spatialindex.c check_sql_stmt.c \
   195    199   	check_version.c check_virtualtable1.c check_virtualtable2.c \
   196    200   	check_virtualtable3.c check_virtualtable4.c \
   197    201   	check_virtualtable5.c check_virtualtable6.c check_xls_load.c \
   198    202   	shape_3d.c shape_cp1252.c shape_primitives.c shape_utf8_1.c \
   199    203   	shape_utf8_2.c
   200    204   DIST_SOURCES = check_create.c check_dbf_load.c check_endian.c \
   201    205   	check_exif.c check_extension.c check_extra_relations_fncts.c \
   202    206   	check_fdo1.c check_fdo2.c check_fdo3.c check_gaia_utf8.c \
   203    207   	check_gaia_util.c check_geom_aux.c check_geometry_cols.c \
   204         -	check_init.c check_init2.c check_math_funcs.c check_mbrcache.c \
   205         -	check_recover_geom.c check_relations_fncts.c check_shp_load.c \
   206         -	check_shp_load_3d.c check_spatialindex.c check_sql_stmt.c \
   207         -	check_version.c check_virtualtable1.c check_virtualtable2.c \
          208  +	check_geoscvt_fncts.c check_init.c check_init2.c \
          209  +	check_math_funcs.c check_mbrcache.c check_recover_geom.c \
          210  +	check_relations_fncts.c check_shp_load.c check_shp_load_3d.c \
          211  +	check_spatialindex.c check_sql_stmt.c check_version.c \
          212  +	check_virtualtable1.c check_virtualtable2.c \
   208    213   	check_virtualtable3.c check_virtualtable4.c \
   209    214   	check_virtualtable5.c check_virtualtable6.c check_xls_load.c \
   210    215   	shape_3d.c shape_cp1252.c shape_primitives.c shape_utf8_1.c \
   211    216   	shape_utf8_2.c
   212    217   ETAGS = etags
   213    218   CTAGS = ctags
   214    219   am__tty_colors = \
................................................................................
  2309   2314   	@list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \
  2310   2315   	echo " rm -f" $$list; \
  2311   2316   	rm -f $$list || exit $$?; \
  2312   2317   	test -n "$(EXEEXT)" || exit 0; \
  2313   2318   	list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
  2314   2319   	echo " rm -f" $$list; \
  2315   2320   	rm -f $$list
  2316         -check_create$(EXEEXT): $(check_create_OBJECTS) $(check_create_DEPENDENCIES) 
         2321  +check_create$(EXEEXT): $(check_create_OBJECTS) $(check_create_DEPENDENCIES) $(EXTRA_check_create_DEPENDENCIES) 
  2317   2322   	@rm -f check_create$(EXEEXT)
  2318   2323   	$(LINK) $(check_create_OBJECTS) $(check_create_LDADD) $(LIBS)
  2319         -check_dbf_load$(EXEEXT): $(check_dbf_load_OBJECTS) $(check_dbf_load_DEPENDENCIES) 
         2324  +check_dbf_load$(EXEEXT): $(check_dbf_load_OBJECTS) $(check_dbf_load_DEPENDENCIES) $(EXTRA_check_dbf_load_DEPENDENCIES) 
  2320   2325   	@rm -f check_dbf_load$(EXEEXT)
  2321   2326   	$(LINK) $(check_dbf_load_OBJECTS) $(check_dbf_load_LDADD) $(LIBS)
  2322         -check_endian$(EXEEXT): $(check_endian_OBJECTS) $(check_endian_DEPENDENCIES) 
         2327  +check_endian$(EXEEXT): $(check_endian_OBJECTS) $(check_endian_DEPENDENCIES) $(EXTRA_check_endian_DEPENDENCIES) 
  2323   2328   	@rm -f check_endian$(EXEEXT)
  2324   2329   	$(LINK) $(check_endian_OBJECTS) $(check_endian_LDADD) $(LIBS)
  2325         -check_exif$(EXEEXT): $(check_exif_OBJECTS) $(check_exif_DEPENDENCIES) 
         2330  +check_exif$(EXEEXT): $(check_exif_OBJECTS) $(check_exif_DEPENDENCIES) $(EXTRA_check_exif_DEPENDENCIES) 
  2326   2331   	@rm -f check_exif$(EXEEXT)
  2327   2332   	$(LINK) $(check_exif_OBJECTS) $(check_exif_LDADD) $(LIBS)
  2328         -check_extension$(EXEEXT): $(check_extension_OBJECTS) $(check_extension_DEPENDENCIES) 
         2333  +check_extension$(EXEEXT): $(check_extension_OBJECTS) $(check_extension_DEPENDENCIES) $(EXTRA_check_extension_DEPENDENCIES) 
  2329   2334   	@rm -f check_extension$(EXEEXT)
  2330   2335   	$(LINK) $(check_extension_OBJECTS) $(check_extension_LDADD) $(LIBS)
  2331         -check_extra_relations_fncts$(EXEEXT): $(check_extra_relations_fncts_OBJECTS) $(check_extra_relations_fncts_DEPENDENCIES) 
         2336  +check_extra_relations_fncts$(EXEEXT): $(check_extra_relations_fncts_OBJECTS) $(check_extra_relations_fncts_DEPENDENCIES) $(EXTRA_check_extra_relations_fncts_DEPENDENCIES) 
  2332   2337   	@rm -f check_extra_relations_fncts$(EXEEXT)
  2333   2338   	$(LINK) $(check_extra_relations_fncts_OBJECTS) $(check_extra_relations_fncts_LDADD) $(LIBS)
  2334         -check_fdo1$(EXEEXT): $(check_fdo1_OBJECTS) $(check_fdo1_DEPENDENCIES) 
         2339  +check_fdo1$(EXEEXT): $(check_fdo1_OBJECTS) $(check_fdo1_DEPENDENCIES) $(EXTRA_check_fdo1_DEPENDENCIES) 
  2335   2340   	@rm -f check_fdo1$(EXEEXT)
  2336   2341   	$(LINK) $(check_fdo1_OBJECTS) $(check_fdo1_LDADD) $(LIBS)
  2337         -check_fdo2$(EXEEXT): $(check_fdo2_OBJECTS) $(check_fdo2_DEPENDENCIES) 
         2342  +check_fdo2$(EXEEXT): $(check_fdo2_OBJECTS) $(check_fdo2_DEPENDENCIES) $(EXTRA_check_fdo2_DEPENDENCIES) 
  2338   2343   	@rm -f check_fdo2$(EXEEXT)
  2339   2344   	$(LINK) $(check_fdo2_OBJECTS) $(check_fdo2_LDADD) $(LIBS)
  2340         -check_fdo3$(EXEEXT): $(check_fdo3_OBJECTS) $(check_fdo3_DEPENDENCIES) 
         2345  +check_fdo3$(EXEEXT): $(check_fdo3_OBJECTS) $(check_fdo3_DEPENDENCIES) $(EXTRA_check_fdo3_DEPENDENCIES) 
  2341   2346   	@rm -f check_fdo3$(EXEEXT)
  2342   2347   	$(LINK) $(check_fdo3_OBJECTS) $(check_fdo3_LDADD) $(LIBS)
  2343         -check_gaia_utf8$(EXEEXT): $(check_gaia_utf8_OBJECTS) $(check_gaia_utf8_DEPENDENCIES) 
         2348  +check_gaia_utf8$(EXEEXT): $(check_gaia_utf8_OBJECTS) $(check_gaia_utf8_DEPENDENCIES) $(EXTRA_check_gaia_utf8_DEPENDENCIES) 
  2344   2349   	@rm -f check_gaia_utf8$(EXEEXT)
  2345   2350   	$(LINK) $(check_gaia_utf8_OBJECTS) $(check_gaia_utf8_LDADD) $(LIBS)
  2346         -check_gaia_util$(EXEEXT): $(check_gaia_util_OBJECTS) $(check_gaia_util_DEPENDENCIES) 
         2351  +check_gaia_util$(EXEEXT): $(check_gaia_util_OBJECTS) $(check_gaia_util_DEPENDENCIES) $(EXTRA_check_gaia_util_DEPENDENCIES) 
  2347   2352   	@rm -f check_gaia_util$(EXEEXT)
  2348   2353   	$(LINK) $(check_gaia_util_OBJECTS) $(check_gaia_util_LDADD) $(LIBS)
  2349         -check_geom_aux$(EXEEXT): $(check_geom_aux_OBJECTS) $(check_geom_aux_DEPENDENCIES) 
         2354  +check_geom_aux$(EXEEXT): $(check_geom_aux_OBJECTS) $(check_geom_aux_DEPENDENCIES) $(EXTRA_check_geom_aux_DEPENDENCIES) 
  2350   2355   	@rm -f check_geom_aux$(EXEEXT)
  2351   2356   	$(LINK) $(check_geom_aux_OBJECTS) $(check_geom_aux_LDADD) $(LIBS)
  2352         -check_geometry_cols$(EXEEXT): $(check_geometry_cols_OBJECTS) $(check_geometry_cols_DEPENDENCIES) 
         2357  +check_geometry_cols$(EXEEXT): $(check_geometry_cols_OBJECTS) $(check_geometry_cols_DEPENDENCIES) $(EXTRA_check_geometry_cols_DEPENDENCIES) 
  2353   2358   	@rm -f check_geometry_cols$(EXEEXT)
  2354   2359   	$(LINK) $(check_geometry_cols_OBJECTS) $(check_geometry_cols_LDADD) $(LIBS)
  2355         -check_init$(EXEEXT): $(check_init_OBJECTS) $(check_init_DEPENDENCIES) 
         2360  +check_geoscvt_fncts$(EXEEXT): $(check_geoscvt_fncts_OBJECTS) $(check_geoscvt_fncts_DEPENDENCIES) $(EXTRA_check_geoscvt_fncts_DEPENDENCIES) 
         2361  +	@rm -f check_geoscvt_fncts$(EXEEXT)
         2362  +	$(LINK) $(check_geoscvt_fncts_OBJECTS) $(check_geoscvt_fncts_LDADD) $(LIBS)
         2363  +check_init$(EXEEXT): $(check_init_OBJECTS) $(check_init_DEPENDENCIES) $(EXTRA_check_init_DEPENDENCIES) 
  2356   2364   	@rm -f check_init$(EXEEXT)
  2357   2365   	$(LINK) $(check_init_OBJECTS) $(check_init_LDADD) $(LIBS)
  2358         -check_init2$(EXEEXT): $(check_init2_OBJECTS) $(check_init2_DEPENDENCIES) 
         2366  +check_init2$(EXEEXT): $(check_init2_OBJECTS) $(check_init2_DEPENDENCIES) $(EXTRA_check_init2_DEPENDENCIES) 
  2359   2367   	@rm -f check_init2$(EXEEXT)
  2360   2368   	$(LINK) $(check_init2_OBJECTS) $(check_init2_LDADD) $(LIBS)
  2361         -check_math_funcs$(EXEEXT): $(check_math_funcs_OBJECTS) $(check_math_funcs_DEPENDENCIES) 
         2369  +check_math_funcs$(EXEEXT): $(check_math_funcs_OBJECTS) $(check_math_funcs_DEPENDENCIES) $(EXTRA_check_math_funcs_DEPENDENCIES) 
  2362   2370   	@rm -f check_math_funcs$(EXEEXT)
  2363   2371   	$(LINK) $(check_math_funcs_OBJECTS) $(check_math_funcs_LDADD) $(LIBS)
  2364         -check_mbrcache$(EXEEXT): $(check_mbrcache_OBJECTS) $(check_mbrcache_DEPENDENCIES) 
         2372  +check_mbrcache$(EXEEXT): $(check_mbrcache_OBJECTS) $(check_mbrcache_DEPENDENCIES) $(EXTRA_check_mbrcache_DEPENDENCIES) 
  2365   2373   	@rm -f check_mbrcache$(EXEEXT)
  2366   2374   	$(LINK) $(check_mbrcache_OBJECTS) $(check_mbrcache_LDADD) $(LIBS)
  2367         -check_recover_geom$(EXEEXT): $(check_recover_geom_OBJECTS) $(check_recover_geom_DEPENDENCIES) 
         2375  +check_recover_geom$(EXEEXT): $(check_recover_geom_OBJECTS) $(check_recover_geom_DEPENDENCIES) $(EXTRA_check_recover_geom_DEPENDENCIES) 
  2368   2376   	@rm -f check_recover_geom$(EXEEXT)
  2369   2377   	$(LINK) $(check_recover_geom_OBJECTS) $(check_recover_geom_LDADD) $(LIBS)
  2370         -check_relations_fncts$(EXEEXT): $(check_relations_fncts_OBJECTS) $(check_relations_fncts_DEPENDENCIES) 
         2378  +check_relations_fncts$(EXEEXT): $(check_relations_fncts_OBJECTS) $(check_relations_fncts_DEPENDENCIES) $(EXTRA_check_relations_fncts_DEPENDENCIES) 
  2371   2379   	@rm -f check_relations_fncts$(EXEEXT)
  2372   2380   	$(LINK) $(check_relations_fncts_OBJECTS) $(check_relations_fncts_LDADD) $(LIBS)
  2373         -check_shp_load$(EXEEXT): $(check_shp_load_OBJECTS) $(check_shp_load_DEPENDENCIES) 
         2381  +check_shp_load$(EXEEXT): $(check_shp_load_OBJECTS) $(check_shp_load_DEPENDENCIES) $(EXTRA_check_shp_load_DEPENDENCIES) 
  2374   2382   	@rm -f check_shp_load$(EXEEXT)
  2375   2383   	$(LINK) $(check_shp_load_OBJECTS) $(check_shp_load_LDADD) $(LIBS)
  2376         -check_shp_load_3d$(EXEEXT): $(check_shp_load_3d_OBJECTS) $(check_shp_load_3d_DEPENDENCIES) 
         2384  +check_shp_load_3d$(EXEEXT): $(check_shp_load_3d_OBJECTS) $(check_shp_load_3d_DEPENDENCIES) $(EXTRA_check_shp_load_3d_DEPENDENCIES) 
  2377   2385   	@rm -f check_shp_load_3d$(EXEEXT)
  2378   2386   	$(LINK) $(check_shp_load_3d_OBJECTS) $(check_shp_load_3d_LDADD) $(LIBS)
  2379         -check_spatialindex$(EXEEXT): $(check_spatialindex_OBJECTS) $(check_spatialindex_DEPENDENCIES) 
         2387  +check_spatialindex$(EXEEXT): $(check_spatialindex_OBJECTS) $(check_spatialindex_DEPENDENCIES) $(EXTRA_check_spatialindex_DEPENDENCIES) 
  2380   2388   	@rm -f check_spatialindex$(EXEEXT)
  2381   2389   	$(LINK) $(check_spatialindex_OBJECTS) $(check_spatialindex_LDADD) $(LIBS)
  2382         -check_sql_stmt$(EXEEXT): $(check_sql_stmt_OBJECTS) $(check_sql_stmt_DEPENDENCIES) 
         2390  +check_sql_stmt$(EXEEXT): $(check_sql_stmt_OBJECTS) $(check_sql_stmt_DEPENDENCIES) $(EXTRA_check_sql_stmt_DEPENDENCIES) 
  2383   2391   	@rm -f check_sql_stmt$(EXEEXT)
  2384   2392   	$(LINK) $(check_sql_stmt_OBJECTS) $(check_sql_stmt_LDADD) $(LIBS)
  2385         -check_version$(EXEEXT): $(check_version_OBJECTS) $(check_version_DEPENDENCIES) 
         2393  +check_version$(EXEEXT): $(check_version_OBJECTS) $(check_version_DEPENDENCIES) $(EXTRA_check_version_DEPENDENCIES) 
  2386   2394   	@rm -f check_version$(EXEEXT)
  2387   2395   	$(LINK) $(check_version_OBJECTS) $(check_version_LDADD) $(LIBS)
  2388         -check_virtualtable1$(EXEEXT): $(check_virtualtable1_OBJECTS) $(check_virtualtable1_DEPENDENCIES) 
         2396  +check_virtualtable1$(EXEEXT): $(check_virtualtable1_OBJECTS) $(check_virtualtable1_DEPENDENCIES) $(EXTRA_check_virtualtable1_DEPENDENCIES) 
  2389   2397   	@rm -f check_virtualtable1$(EXEEXT)
  2390   2398   	$(LINK) $(check_virtualtable1_OBJECTS) $(check_virtualtable1_LDADD) $(LIBS)
  2391         -check_virtualtable2$(EXEEXT): $(check_virtualtable2_OBJECTS) $(check_virtualtable2_DEPENDENCIES) 
         2399  +check_virtualtable2$(EXEEXT): $(check_virtualtable2_OBJECTS) $(check_virtualtable2_DEPENDENCIES) $(EXTRA_check_virtualtable2_DEPENDENCIES) 
  2392   2400   	@rm -f check_virtualtable2$(EXEEXT)
  2393   2401   	$(LINK) $(check_virtualtable2_OBJECTS) $(check_virtualtable2_LDADD) $(LIBS)
  2394         -check_virtualtable3$(EXEEXT): $(check_virtualtable3_OBJECTS) $(check_virtualtable3_DEPENDENCIES) 
         2402  +check_virtualtable3$(EXEEXT): $(check_virtualtable3_OBJECTS) $(check_virtualtable3_DEPENDENCIES) $(EXTRA_check_virtualtable3_DEPENDENCIES) 
  2395   2403   	@rm -f check_virtualtable3$(EXEEXT)
  2396   2404   	$(LINK) $(check_virtualtable3_OBJECTS) $(check_virtualtable3_LDADD) $(LIBS)
  2397         -check_virtualtable4$(EXEEXT): $(check_virtualtable4_OBJECTS) $(check_virtualtable4_DEPENDENCIES) 
         2405  +check_virtualtable4$(EXEEXT): $(check_virtualtable4_OBJECTS) $(check_virtualtable4_DEPENDENCIES) $(EXTRA_check_virtualtable4_DEPENDENCIES) 
  2398   2406   	@rm -f check_virtualtable4$(EXEEXT)
  2399   2407   	$(LINK) $(check_virtualtable4_OBJECTS) $(check_virtualtable4_LDADD) $(LIBS)
  2400         -check_virtualtable5$(EXEEXT): $(check_virtualtable5_OBJECTS) $(check_virtualtable5_DEPENDENCIES) 
         2408  +check_virtualtable5$(EXEEXT): $(check_virtualtable5_OBJECTS) $(check_virtualtable5_DEPENDENCIES) $(EXTRA_check_virtualtable5_DEPENDENCIES) 
  2401   2409   	@rm -f check_virtualtable5$(EXEEXT)
  2402   2410   	$(LINK) $(check_virtualtable5_OBJECTS) $(check_virtualtable5_LDADD) $(LIBS)
  2403         -check_virtualtable6$(EXEEXT): $(check_virtualtable6_OBJECTS) $(check_virtualtable6_DEPENDENCIES) 
         2411  +check_virtualtable6$(EXEEXT): $(check_virtualtable6_OBJECTS) $(check_virtualtable6_DEPENDENCIES) $(EXTRA_check_virtualtable6_DEPENDENCIES) 
  2404   2412   	@rm -f check_virtualtable6$(EXEEXT)
  2405   2413   	$(LINK) $(check_virtualtable6_OBJECTS) $(check_virtualtable6_LDADD) $(LIBS)
  2406         -check_xls_load$(EXEEXT): $(check_xls_load_OBJECTS) $(check_xls_load_DEPENDENCIES) 
         2414  +check_xls_load$(EXEEXT): $(check_xls_load_OBJECTS) $(check_xls_load_DEPENDENCIES) $(EXTRA_check_xls_load_DEPENDENCIES) 
  2407   2415   	@rm -f check_xls_load$(EXEEXT)
  2408   2416   	$(LINK) $(check_xls_load_OBJECTS) $(check_xls_load_LDADD) $(LIBS)
  2409         -shape_3d$(EXEEXT): $(shape_3d_OBJECTS) $(shape_3d_DEPENDENCIES) 
         2417  +shape_3d$(EXEEXT): $(shape_3d_OBJECTS) $(shape_3d_DEPENDENCIES) $(EXTRA_shape_3d_DEPENDENCIES) 
  2410   2418   	@rm -f shape_3d$(EXEEXT)
  2411   2419   	$(LINK) $(shape_3d_OBJECTS) $(shape_3d_LDADD) $(LIBS)
  2412         -shape_cp1252$(EXEEXT): $(shape_cp1252_OBJECTS) $(shape_cp1252_DEPENDENCIES) 
         2420  +shape_cp1252$(EXEEXT): $(shape_cp1252_OBJECTS) $(shape_cp1252_DEPENDENCIES) $(EXTRA_shape_cp1252_DEPENDENCIES) 
  2413   2421   	@rm -f shape_cp1252$(EXEEXT)
  2414   2422   	$(LINK) $(shape_cp1252_OBJECTS) $(shape_cp1252_LDADD) $(LIBS)
  2415         -shape_primitives$(EXEEXT): $(shape_primitives_OBJECTS) $(shape_primitives_DEPENDENCIES) 
         2423  +shape_primitives$(EXEEXT): $(shape_primitives_OBJECTS) $(shape_primitives_DEPENDENCIES) $(EXTRA_shape_primitives_DEPENDENCIES) 
  2416   2424   	@rm -f shape_primitives$(EXEEXT)
  2417   2425   	$(LINK) $(shape_primitives_OBJECTS) $(shape_primitives_LDADD) $(LIBS)
  2418         -shape_utf8_1$(EXEEXT): $(shape_utf8_1_OBJECTS) $(shape_utf8_1_DEPENDENCIES) 
         2426  +shape_utf8_1$(EXEEXT): $(shape_utf8_1_OBJECTS) $(shape_utf8_1_DEPENDENCIES) $(EXTRA_shape_utf8_1_DEPENDENCIES) 
  2419   2427   	@rm -f shape_utf8_1$(EXEEXT)
  2420   2428   	$(LINK) $(shape_utf8_1_OBJECTS) $(shape_utf8_1_LDADD) $(LIBS)
  2421         -shape_utf8_2$(EXEEXT): $(shape_utf8_2_OBJECTS) $(shape_utf8_2_DEPENDENCIES) 
         2429  +shape_utf8_2$(EXEEXT): $(shape_utf8_2_OBJECTS) $(shape_utf8_2_DEPENDENCIES) $(EXTRA_shape_utf8_2_DEPENDENCIES) 
  2422   2430   	@rm -f shape_utf8_2$(EXEEXT)
  2423   2431   	$(LINK) $(shape_utf8_2_OBJECTS) $(shape_utf8_2_LDADD) $(LIBS)
  2424   2432   
  2425   2433   mostlyclean-compile:
  2426   2434   	-rm -f *.$(OBJEXT)
  2427   2435   
  2428   2436   distclean-compile:
................................................................................
  2437   2445   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_fdo1.Po@am__quote@
  2438   2446   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_fdo2.Po@am__quote@
  2439   2447   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_fdo3.Po@am__quote@
  2440   2448   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_gaia_utf8.Po@am__quote@
  2441   2449   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_gaia_util.Po@am__quote@
  2442   2450   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_geom_aux.Po@am__quote@
  2443   2451   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_geometry_cols.Po@am__quote@
         2452  +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_geoscvt_fncts.Po@am__quote@
  2444   2453   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_init.Po@am__quote@
  2445   2454   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_init2.Po@am__quote@
  2446   2455   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_math_funcs.Po@am__quote@
  2447   2456   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_mbrcache.Po@am__quote@
  2448   2457   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_recover_geom.Po@am__quote@
  2449   2458   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_relations_fncts.Po@am__quote@
  2450   2459   @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check_shp_load.Po@am__quote@
................................................................................
  2621   2630   	  if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
  2622   2631   	    report="Please report to $(PACKAGE_BUGREPORT)"; \
  2623   2632   	    test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
  2624   2633   	      dashes="$$report"; \
  2625   2634   	  fi; \
  2626   2635   	  dashes=`echo "$$dashes" | sed s/./=/g`; \
  2627   2636   	  if test "$$failed" -eq 0; then \
  2628         -	    echo "$$grn$$dashes"; \
         2637  +	    col="$$grn"; \
  2629   2638   	  else \
  2630         -	    echo "$$red$$dashes"; \
         2639  +	    col="$$red"; \
  2631   2640   	  fi; \
  2632         -	  echo "$$banner"; \
  2633         -	  test -z "$$skipped" || echo "$$skipped"; \
  2634         -	  test -z "$$report" || echo "$$report"; \
  2635         -	  echo "$$dashes$$std"; \
         2641  +	  echo "$${col}$$dashes$${std}"; \
         2642  +	  echo "$${col}$$banner$${std}"; \
         2643  +	  test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
         2644  +	  test -z "$$report" || echo "$${col}$$report$${std}"; \
         2645  +	  echo "$${col}$$dashes$${std}"; \
  2636   2646   	  test "$$failed" -eq 0; \
  2637   2647   	else :; fi
  2638   2648   
  2639   2649   distdir: $(DISTFILES)
  2640   2650   	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
  2641   2651   	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
  2642   2652   	list='$(DISTFILES)'; \
................................................................................
  2678   2688   uninstall: uninstall-am
  2679   2689   
  2680   2690   install-am: all-am
  2681   2691   	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
  2682   2692   
  2683   2693   installcheck: installcheck-am
  2684   2694   install-strip:
  2685         -	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
  2686         -	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
  2687         -	  `test -z '$(STRIP)' || \
  2688         -	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
         2695  +	if test -z '$(STRIP)'; then \
         2696  +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
         2697  +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
         2698  +	      install; \
         2699  +	else \
         2700  +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
         2701  +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
         2702  +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
         2703  +	fi
  2689   2704   mostlyclean-generic:
  2690   2705   	-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
  2691   2706   
  2692   2707   clean-generic:
  2693   2708   
  2694   2709   distclean-generic:
  2695   2710   	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)

Added test/check_geoscvt_fncts.c.

            1  +/*
            2  +
            3  + check_geoscvt_fncts.c -- SpatiaLite Test Case
            4  + 
            5  + This does "boundary conditions" and error checks for gg_geoscvt
            6  + functions that are hard to test with SQL.
            7  +
            8  + Author: Brad Hards <bradh@frogmouth.net>
            9  +
           10  + ------------------------------------------------------------------------------
           11  + 
           12  + Version: MPL 1.1/GPL 2.0/LGPL 2.1
           13  + 
           14  + The contents of this file are subject to the Mozilla Public License Version
           15  + 1.1 (the "License"); you may not use this file except in compliance with
           16  + the License. You may obtain a copy of the License at
           17  + http://www.mozilla.org/MPL/
           18  + 
           19  +Software distributed under the License is distributed on an "AS IS" basis,
           20  +WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
           21  +for the specific language governing rights and limitations under the
           22  +License.
           23  +
           24  +The Original Code is the SpatiaLite library
           25  +
           26  +The Initial Developer of the Original Code is Alessandro Furieri
           27  + 
           28  +Portions created by the Initial Developer are Copyright (C) 2011
           29  +the Initial Developer. All Rights Reserved.
           30  +
           31  +Contributor(s):
           32  +Brad Hards <bradh@frogmouth.net>
           33  +
           34  +Alternatively, the contents of this file may be used under the terms of
           35  +either the GNU General Public License Version 2 or later (the "GPL"), or
           36  +the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
           37  +in which case the provisions of the GPL or the LGPL are applicable instead
           38  +of those above. If you wish to allow use of your version of this file only
           39  +under the terms of either the GPL or the LGPL, and not to allow others to
           40  +use your version of this file under the terms of the MPL, indicate your
           41  +decision by deleting the provisions above and replace them with the notice
           42  +and other provisions required by the GPL or the LGPL. If you do not delete
           43  +the provisions above, a recipient may use your version of this file under
           44  +the terms of any one of the MPL, the GPL or the LGPL.
           45  + 
           46  +*/
           47  +#include <stdlib.h>
           48  +#include <stdio.h>
           49  +#include <string.h>
           50  +
           51  +#include "sqlite3.h"
           52  +#include "spatialite.h"
           53  +#include "spatialite/gaiageo.h"
           54  +
           55  +// static const double double_eps = 0.00000001;
           56  +
           57  +int main (int argc, char *argv[])
           58  +{
           59  +    gaiaGeomCollPtr result;
           60  +    void *resultVoid;
           61  +    // double resultDouble;
           62  +    int returnValue = 0;
           63  +    
           64  +    /* Common setup */
           65  +    // spatialite_init(0);
           66  +    
           67  +    gaiaGeomCollPtr emptyGeometry = gaiaAllocGeomColl();
           68  +    // gaiaAddPointToGeomColl(validGeometry, 1.0, 2.0);
           69  +    // double dummyResultArg = 0.0;
           70  +    // double dummyResultArg2 = 0.0;
           71  +    
           72  +    /* Tests start here */
           73  +    
           74  +    /* null input test */
           75  +    result = gaiaFromGeos_XY ( (const void*) NULL );
           76  +    if (result != NULL) {
           77  +	fprintf(stderr, "bad result at %s:%i\n", __FILE__, __LINE__);
           78  +	returnValue = -1;
           79  +	goto exit;
           80  +    }
           81  +    
           82  +    resultVoid = gaiaToGeos ((gaiaGeomCollPtr)NULL);
           83  +    if (result != NULL) {
           84  +	fprintf(stderr, "bad result at %s:%i\n", __FILE__, __LINE__);
           85  +	returnValue = -2;
           86  +	goto exit;
           87  +    }
           88  +    
           89  +    /* unknown type geometry collection */
           90  +    result = gaiaToGeos ( emptyGeometry );
           91  +    if (result != NULL) {
           92  +	fprintf(stderr, "bad result at %s:%i\n", __FILE__, __LINE__);
           93  +	returnValue = -3;
           94  +	goto exit;
           95  +    }
           96  +    
           97  +    /* Cleanup and exit */
           98  +exit:
           99  +    gaiaFreeGeomColl (emptyGeometry);
          100  + //   spatialite_cleanup();
          101  +    return returnValue;
          102  +}

Added test/sql_stmt_tests/fromgml27.testcase.

            1  +FromGML - non-WGS84 Point
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:Point srsName="EPSG:3003"><gml:coordinates>1,2</gml:coordinates></gml:Point>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:Point srsName="EPSG:3003"><gml:coordinates>1,2</gml:coordinates></gml:Point>')):0
            7  +SRID=3003;POINT(1 2)

Added test/sql_stmt_tests/fromgml28.testcase.

            1  +FromGML - MULTIPOINT, single point
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:MultiPoint><gml:pointMember><gml:Point><gml:coordinates>1,2</gml:coordinates></gml:Point></gml:pointMember></gml:MultiPoint>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:MultiPoint><gml:pointMember><gml:Point><gml:coordinates>1,2</gml:coordinates></gml:Point></gml:pointMember></gml:MultiPoint>')):0
            7  +SRID=-1;MULTIPOINT(1 2)

Added test/sql_stmt_tests/fromgml29.testcase.

            1  +FromGML - GeometryCollection, single point
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:MultiGeometry><gml:geometryMember><gml:Point><gml:coordinates>1,2</gml:coordinates></gml:Point></gml:geometryMember></gml:MultiGeometry>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:MultiGeometry><gml:geometryMember><gml:Point><gml:coordinates>1,2</gml:coordinates></gml:Point></gml:geometryMember></gml:MultiGeometry>')):0
            7  +SRID=-1;GEOMETRYCOLLECTION(POINT(1 2))

Added test/sql_stmt_tests/fromgml30.testcase.

            1  +FromGML - MULTIPOINT, single pointZ
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<gml:MultiPoint><gml:pointMember><gml:Point><gml:coordinates>1,2,3.2</gml:coordinates></gml:Point></gml:pointMember></gml:MultiPoint>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<gml:MultiPoint><gml:pointMember><gml:Point><gml:coordinates>1,2,3.2</gml:coordinates></gml:Point></gml:pointMember></gml:MultiPoint>')):0
            7  +MULTIPOINT Z(1 2 3.2)

Added test/sql_stmt_tests/fromgml31.testcase.

            1  +FromGML - GeometryCollection, single pointZ
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:MultiGeometry><gml:geometryMember><gml:Point><gml:coordinates>1,2,3.2</gml:coordinates></gml:Point></gml:geometryMember></gml:MultiGeometry>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:MultiGeometry><gml:geometryMember><gml:Point><gml:coordinates>1,2,3.2</gml:coordinates></gml:Point></gml:geometryMember></gml:MultiGeometry>')):0
            7  +SRID=-1;GEOMETRYCOLLECTION(POINT(1 2 3.2))

Added test/sql_stmt_tests/fromgml32.testcase.

            1  +FromGML - GeometryCollection, single pointZ, no namespace
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<MultiGeometry><geometryMember><Point><coordinates>1,2,3.2</coordinates></Point></geometryMember></MultiGeometry>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<MultiGeometry><geometryMember><Point><coordinates>1,2,3.2</coordinates></Point></geometryMember></MultiGeometry>')):0
            7  +SRID=-1;GEOMETRYCOLLECTION(POINT(1 2 3.2))

Added test/sql_stmt_tests/fromgml33.testcase.

            1  +FromGML - multipoint, single pointZ, SRID, no namespace
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<MultiPoint srsName="EPSG:3213"><pointMember><Point><coordinates>1,2,3.2</coordinates></Point></pointMember></MultiPoint>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<MultiPoint srsName="EPSG:3213"><pointMember><Point><coordinates>1,2,3.2</coordinates></Point></pointMember></MultiPoint>')):0
            7  +SRID=3213;MULTIPOINT(1 2 3.2)

Added test/sql_stmt_tests/fromgml34.testcase.

            1  +FromGML - poslist linestring
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<gml:LineString gml:id="p21" srsName="http://www.opengis.net/def/crs/EPSG/0/4326"><gml:posList dimension="2">45.67 88.56 55.56 89.44</gml:posList></gml:LineString >'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<gml:LineString gml:id="p21" srsName="http://www.opengis.net/def/crs/EPSG/0/4326"><gml:posList dimension="2">45.67 88.56 55.56 89.44</gml:posList></gml:LineString >')):0
            7  +LINESTRING(45.67 88.56, 55.56 89.44)

Added test/sql_stmt_tests/fromgml35.testcase.

            1  +FromGML - poslist polygon
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:posList>0 0 -100 0 -100 100 0 100 0 0</gml:posList></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><gml:posList>0 0 -100 0 -100 100 0 100 0 0</gml:posList></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>')):0
            7  +POLYGON((0 0, -100 0, -100 100, 0 100, 0 0))
            8  +

Added test/sql_stmt_tests/fromgml36.testcase.

            1  +FromGML - poslist polygon, no namespace
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><posList>0 0 -100 0 -100 100 0 100 0 0</posList></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><posList>0 0 -100 0 -100 100 0 100 0 0</posList></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>')):0
            7  +POLYGON((0 0, -100 0, -100 100, 0 100, 0 0))
            8  +

Added test/sql_stmt_tests/fromgml37.testcase.

            1  +FromGML - poslist polygon, bad contents
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><posList>foo</posList></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><posList>foo</posList></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>')):0
            7  +(NULL)
            8  +

Added test/sql_stmt_tests/fromgml38.testcase.

            1  +FromGML - polygon, missing poslist
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><random/></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<gml:Polygon><gml:outerBoundaryIs><gml:LinearRing><random/></gml:LinearRing></gml:outerBoundaryIs></gml:Polygon>')):0
            7  +(NULL)
            8  +

Added test/sql_stmt_tests/fromgml39.testcase.

            1  +FromGML - Polygon v2, inner ring poslist
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:Polygon srsName="EPSG:4326"><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>0,0 5,0 5,5 0,5 0,0</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs><gml:innerBoundaryIs><gml:LinearRing><gml:posList>1 1 2 1 2 2 1 2 1 1</gml:posList></gml:LinearRing></gml:innerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:Polygon srsName="EPSG:4326"><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>0,0 5,0 5,5 0,5 0,0</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs><gml:innerBoundaryIs><gml:LinearRing><gml:posList>1 1 2 1 2 2 1 2 1 1</gml:posList></gml:LinearRing></gml:innerBoundaryIs></gml:Polygon>')):0
            7  +SRID=4326;POLYGON((0 0,5 0,5 5,0 5,0 0),(1 1,2 1,2 2,1 2,1 1))

Added test/sql_stmt_tests/fromgml40.testcase.

            1  +FromGML - Polygon v2, poslist, broken
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:Polygon srsName="EPSG:4326"><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>0,0 5,0 5,5 0,5 0,0</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs><gml:innerBoundaryIs><gml:LinearRing><gml:posList>foo</gml:posList></gml:LinearRing></gml:innerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:Polygon srsName="EPSG:4326"><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>0,0 5,0 5,5 0,5 0,0</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs><gml:innerBoundaryIs><gml:LinearRing><gml:posList>foo</gml:posList></gml:LinearRing></gml:innerBoundaryIs></gml:Polygon>')):0
            7  +(NULL)

Added test/sql_stmt_tests/fromgml41.testcase.

            1  +FromGML - Polygon v2, inner ring poslist, bad closing
            2  +:memory: #use in-memory database
            3  +SELECT AsEwkt(GeomFromGml('<gml:Polygon srsName="EPSG:4326"><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>0,0 5,0 5,5 0,5 0,0</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs><gml:innerBoundaryIs><gml:LinearRing><gml:posList>1 1 2 1 2 2 1 2 1 1</somethingelse</gml:LinearRing></gml:innerBoundaryIs></gml:Polygon>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsEwkt(GeomFromGml('<gml:Polygon srsName="EPSG:4326"><gml:outerBoundaryIs><gml:LinearRing><gml:coordinates>0,0 5,0 5,5 0,5 0,0</gml:coordinates></gml:LinearRing></gml:outerBoundaryIs><gml:innerBoundaryIs><gml:LinearRing><gml:posList>1 1 2 1 2 2 1 2 1 1</somethingelse</gml:LinearRing></gml:innerBoundaryIs></gml:Polygon>')):0
            7  +(NULL)

Added test/sql_stmt_tests/fromgml42.testcase.

            1  +FromGML - multipointZ, multiple SRID, no namespace
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<MultiPoint><pointMember><Point srsName="EPSG:4326"><coordinates>1,2,3.2</coordinates></Point></pointMember><pointMember><Point srsName="EPSG:3003"><coordinates>2,4,3.2</coordinates></Point></pointMember></MultiPoint>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<MultiPoint><pointMember><Point srsName="EPSG:4326"><coordinates>1,2,3.2</coordinates></Point></pointMember><pointMember><Point srsName="EPSG:3003"><coordinates>2,4,3.2</coordinates></Point></pointMember></MultiPoint>')):0
            7  +MULTIPOINT Z(1 2 3.2, -4.356405 0.000738 79.631063)

Added test/sql_stmt_tests/fromgml43.testcase.

            1  +FromGML - multipoint, multiple SRID - bad second SRID, no namespace
            2  +:memory: #use in-memory database
            3  +SELECT AsText(GeomFromGml('<MultiPoint><pointMember><Point srsName="EPSG:4326"><coordinates>1,2,3.2</coordinates></Point></pointMember><pointMember><Point srsName="EPSG:9999"><coordinates>2,4,4.2</coordinates></Point></pointMember></MultiPoint>'))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +AsText(GeomFromGml('<MultiPoint><pointMember><Point srsName="EPSG:4326"><coordinates>1,2,3.2</coordinates></Point></pointMember><pointMember><Point srsName="EPSG:9999"><coordinates>2,4,4.2</coordinates></Point></pointMember></MultiPoint>')):0
            7  +MULTIPOINT Z(1 2 3.2, 2 4 4.2)

Added test/sql_stmt_tests/issimple6.testcase.

            1  +IsSimple - GeometryCollection, single point
            2  +:memory: #use in-memory database
            3  +SELECT IsSimple(GeomFromText("GEOMETRYCOLLECTION(POINT(1 2))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsSimple(GeomFromText("GEOMETRYCOLLECTION(POINT(1 2))"))
            7  +-1

Added test/sql_stmt_tests/isvalid14.testcase.

            1  +isvalid Geometry Collection of one polygon
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(POLYGON((0 0, 10 0, 10 10, 0 10, 0 0)))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(POLYGON((0 0, 10 0, 10 10, 0 10, 0 0)))"))
            7  +1

Added test/sql_stmt_tests/isvalid15.testcase.

            1  +isvalid Geometry Collection of two polygons
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(POLYGON((0 0, 10 0, 10 10, 0 10, 0 0)),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(POLYGON((0 0, 10 0, 10 10, 0 10, 0 0)),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            7  +1

Added test/sql_stmt_tests/isvalid16.testcase.

            1  +isvalid Geometry Collection of point and polygon
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            7  +1

Added test/sql_stmt_tests/isvalid17.testcase.

            1  +isvalid Geometry Collection of point and linestring
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(1 1, 4 1, 4 4, 1 4, 1 1))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(1 1, 4 1, 4 4, 1 4, 1 1))"))
            7  +1

Added test/sql_stmt_tests/isvalid18.testcase.

            1  +isvalid Geometry Collection of two points and linestring
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),POINT(3 4),LINESTRING(1 1, 4 1, 4 4, 1 4, 1 1))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),POINT(3 4),LINESTRING(1 1, 4 1, 4 4, 1 4, 1 1))"))
            7  +1

Added test/sql_stmt_tests/isvalid19.testcase.

            1  +isvalid Geometry Collection of two points and a polygon
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),POINT(3 4),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(POINT(0 0),POINT(3 4),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            7  +1

Added test/sql_stmt_tests/isvalid20.testcase.

            1  +isvalid Geometry Collection of two lines and a polygon
            2  +:memory: #use in-memory database
            3  +SELECT IsValid(GeomFromText("GEOMETRYCOLLECTION(LINESTRING(0 0, 4 1),LINESTRING(3 4, 4 6),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            4  +1 # rows (not including the header row)
            5  +1 # columns
            6  +IsValid(GeomFromText("GEOMETRYCOLLECTION(LINESTRING(0 0, 4 1),LINESTRING(3 4, 4 6),POLYGON((1 1, 4 1, 4 4, 1 4, 1 1)))"))
            7  +1