diff --git a/.github/workflows/pgversion.yml b/.github/workflows/pgversion.yml index f5927ff701..1d3c20e3c1 100644 --- a/.github/workflows/pgversion.yml +++ b/.github/workflows/pgversion.yml @@ -71,8 +71,14 @@ jobs: make -j 4 sudo make install + - name: test install + run: | + sudo service postgresql start + sudo -u postgres createdb -p ${PGPORT} ___pgr___test___ + sudo -u postgres psql -p ${PGPORT} -d ___pgr___test___ -c "CREATE EXTENSION mobilitydb CASCADE" + + - name: Test run: | - export PATH="/usr/lib/postgresql/${{ matrix.psql }}/bin:$PATH" cd build make test diff --git a/CMakeLists.txt b/CMakeLists.txt index ee34cc7c76..ae8d1f51af 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -198,7 +198,7 @@ else() message(FATAL_ERROR "Could not find lwgeom;") endif() -include("test/scripts/test.cmake") +add_subdirectory(test) include("point/point.cmake") include("npoint/npoint.cmake") diff --git a/npoint/npoint.cmake b/npoint/npoint.cmake index 8f4d76bdc7..0acf69e577 100644 --- a/npoint/npoint.cmake +++ b/npoint/npoint.cmake @@ -37,6 +37,3 @@ target_sources(${CMAKE_PROJECT_NAME} PRIVATE ${SRCNPOINT}) set(SQL "${SQL};${SQLNPOINT}") set(CONTROLIN "${CONTROLIN};npoint/control.in") - -include("npoint/test/scripts/test.cmake") - diff --git a/npoint/test/scripts/test.cmake b/npoint/test/scripts/test.cmake deleted file mode 100644 index 9b14067520..0000000000 --- a/npoint/test/scripts/test.cmake +++ /dev/null @@ -1,32 +0,0 @@ -add_test( - NAME load_npoint_tables - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh run_passfail ${CMAKE_BINARY_DIR} load_npoint_tables "../npoint/test/scripts/load.sql.xz" -) - -set_tests_properties(load_npoint_tables PROPERTIES FIXTURES_SETUP DBNPOINT) -set_tests_properties(load_npoint_tables PROPERTIES FIXTURES_REQUIRED DBGEO) -set_tests_properties(load_npoint_tables PROPERTIES DEPENDS create_extension) - -file(GLOB npoint_testfiles "npoint/test/queries/*.sql") -list(SORT npoint_testfiles) - -foreach(file ${npoint_testfiles}) - get_filename_component(TESTNAME ${file} NAME_WE) - set(DOTEST TRUE) - if(${TESTNAME} MATCHES "_pg([0-9]+)") - if(${PG_MAJOR_VERSION} LESS ${CMAKE_MATCH_1}) - message("Disabling test ${TESTNAME}") - set(DOTEST FALSE) - endif() - endif() - if(DOTEST) - add_test( - NAME ${TESTNAME} - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh run_compare ${CMAKE_BINARY_DIR} ${TESTNAME} ${file} - ) - set_tests_properties(${TESTNAME} PROPERTIES FIXTURES_REQUIRED DBNPOINT) - set_tests_properties(${TESTNAME} PROPERTIES RESOURCE_LOCK DBLOCK) - endif() -endforeach() diff --git a/point/point.cmake b/point/point.cmake index 20545ebe6c..48e07618d1 100644 --- a/point/point.cmake +++ b/point/point.cmake @@ -53,4 +53,3 @@ target_sources(${CMAKE_PROJECT_NAME} PRIVATE ${SRCPOINT}) set(SQL "${SQL};${SQLPOINT}") set(CONTROLIN "${CONTROLIN};point/control.in") -include("point/test/scripts/test.cmake") diff --git a/point/test/scripts/test.cmake b/point/test/scripts/test.cmake deleted file mode 100644 index 60a177397e..0000000000 --- a/point/test/scripts/test.cmake +++ /dev/null @@ -1,33 +0,0 @@ -add_test( - NAME load_geom_tables - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh run_passfail ${CMAKE_BINARY_DIR} load_geom_tables "../point/test/scripts/load.sql.xz" -) - -set_tests_properties(load_geom_tables PROPERTIES FIXTURES_SETUP DBGEO) -set_tests_properties(load_geom_tables PROPERTIES FIXTURES_REQUIRED DB) -set_tests_properties(load_geom_tables PROPERTIES DEPENDS create_extension) - -file(GLOB geom_testfiles "point/test/queries/*.sql") -list(SORT geom_testfiles) - -foreach(file ${geom_testfiles}) - get_filename_component(TESTNAME ${file} NAME_WE) - set(DOTEST TRUE) - if(${TESTNAME} MATCHES "_pg([0-9]+)") - if(${PG_MAJOR_VERSION} LESS ${CMAKE_MATCH_1}) - message("Disabling test ${TESTNAME}") - set(DOTEST FALSE) - endif() - endif() - if(DOTEST) - add_test( - NAME ${TESTNAME} - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh run_compare ${CMAKE_BINARY_DIR} ${TESTNAME} ${file} - ) - set_tests_properties(${TESTNAME} PROPERTIES FIXTURES_REQUIRED DBGEO) - set_tests_properties(${TESTNAME} PROPERTIES RESOURCE_LOCK DBLOCK) - endif() -endforeach() - diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 0000000000..41ae7f0c8c --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,10 @@ + + +add_subdirectory(scripts) +add_subdirectory(general) + +if (HAS_LWGEOM) +add_subdirectory(point) +add_subdirectory(npoint) +endif() + diff --git a/test/general/CMakeLists.txt b/test/general/CMakeLists.txt new file mode 100644 index 0000000000..a11e990ec0 --- /dev/null +++ b/test/general/CMakeLists.txt @@ -0,0 +1,36 @@ + +add_test( + NAME load_tables + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/test/scripts + COMMAND test.sh run_passfail load_tables "data/load.sql.xz" + ) + +set_tests_properties(load_tables PROPERTIES + DEPENDS create_extension + FIXTURES_SETUP DB + RESOURCE_LOCK DBLOCK + FIXTURES_REQUIRED DBEXT) + +file(GLOB testfiles "queries/*.sql") +list(SORT testfiles) + +foreach(file ${testfiles}) + get_filename_component(TESTNAME ${file} NAME_WE) + set(DOTEST TRUE) + if(${TESTNAME} MATCHES "_pg([0-9]+)") + if(${PG_MAJOR_VERSION} LESS ${CMAKE_MATCH_1}) + message("Disabling test ${TESTNAME}") + set(DOTEST FALSE) + endif() + endif() + if(DOTEST) + add_test( + NAME ${TESTNAME} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/test/scripts + COMMAND test.sh run_compare ${TESTNAME} ${file} + ) + set_tests_properties(${TESTNAME} PROPERTIES + FIXTURES_REQUIRED DB + RESOURCE_LOCK DBLOCK) + endif() +endforeach() diff --git a/test/scripts/dump_test_tables.txt b/test/general/data/dump_test_tables.txt similarity index 100% rename from test/scripts/dump_test_tables.txt rename to test/general/data/dump_test_tables.txt diff --git a/test/scripts/dump_test_tables_small.txt b/test/general/data/dump_test_tables_small.txt similarity index 100% rename from test/scripts/dump_test_tables_small.txt rename to test/general/data/dump_test_tables_small.txt diff --git a/test/scripts/load.sql.xz b/test/general/data/load.sql.xz similarity index 100% rename from test/scripts/load.sql.xz rename to test/general/data/load.sql.xz diff --git a/test/expected/01_period.test.out b/test/general/expected/01_period.test.out similarity index 100% rename from test/expected/01_period.test.out rename to test/general/expected/01_period.test.out diff --git a/test/expected/01_period_hash_extended_pg11.test.out b/test/general/expected/01_period_hash_extended_pg11.test.out similarity index 100% rename from test/expected/01_period_hash_extended_pg11.test.out rename to test/general/expected/01_period_hash_extended_pg11.test.out diff --git a/test/expected/01_period_tbl.test.out b/test/general/expected/01_period_tbl.test.out similarity index 100% rename from test/expected/01_period_tbl.test.out rename to test/general/expected/01_period_tbl.test.out diff --git a/test/expected/03_timestampset.test.out b/test/general/expected/03_timestampset.test.out similarity index 100% rename from test/expected/03_timestampset.test.out rename to test/general/expected/03_timestampset.test.out diff --git a/test/expected/03_timestampset_tbl.test.out b/test/general/expected/03_timestampset_tbl.test.out similarity index 100% rename from test/expected/03_timestampset_tbl.test.out rename to test/general/expected/03_timestampset_tbl.test.out diff --git a/test/expected/05_periodset.test.out b/test/general/expected/05_periodset.test.out similarity index 100% rename from test/expected/05_periodset.test.out rename to test/general/expected/05_periodset.test.out diff --git a/test/expected/05_periodset_tbl.test.out b/test/general/expected/05_periodset_tbl.test.out similarity index 100% rename from test/expected/05_periodset_tbl.test.out rename to test/general/expected/05_periodset_tbl.test.out diff --git a/test/expected/07_rangetype_ext.test.out b/test/general/expected/07_rangetype_ext.test.out similarity index 100% rename from test/expected/07_rangetype_ext.test.out rename to test/general/expected/07_rangetype_ext.test.out diff --git a/test/expected/07_rangetype_ext_tbl.test.out b/test/general/expected/07_rangetype_ext_tbl.test.out similarity index 100% rename from test/expected/07_rangetype_ext_tbl.test.out rename to test/general/expected/07_rangetype_ext_tbl.test.out diff --git a/test/expected/11_timeops.test.out b/test/general/expected/11_timeops.test.out similarity index 100% rename from test/expected/11_timeops.test.out rename to test/general/expected/11_timeops.test.out diff --git a/test/expected/11_timeops_indexes.test.out b/test/general/expected/11_timeops_indexes.test.out similarity index 100% rename from test/expected/11_timeops_indexes.test.out rename to test/general/expected/11_timeops_indexes.test.out diff --git a/test/expected/11_timeops_indexes_tbl.test.out b/test/general/expected/11_timeops_indexes_tbl.test.out similarity index 100% rename from test/expected/11_timeops_indexes_tbl.test.out rename to test/general/expected/11_timeops_indexes_tbl.test.out diff --git a/test/expected/11_timeops_tbl.test.out b/test/general/expected/11_timeops_tbl.test.out similarity index 100% rename from test/expected/11_timeops_tbl.test.out rename to test/general/expected/11_timeops_tbl.test.out diff --git a/test/expected/13_time_indexes_tbl.test.out b/test/general/expected/13_time_indexes_tbl.test.out similarity index 100% rename from test/expected/13_time_indexes_tbl.test.out rename to test/general/expected/13_time_indexes_tbl.test.out diff --git a/test/expected/15_time_spgist_pg11.test.out b/test/general/expected/15_time_spgist_pg11.test.out similarity index 100% rename from test/expected/15_time_spgist_pg11.test.out rename to test/general/expected/15_time_spgist_pg11.test.out diff --git a/test/expected/17_time_aggfuncs.test.out b/test/general/expected/17_time_aggfuncs.test.out similarity index 100% rename from test/expected/17_time_aggfuncs.test.out rename to test/general/expected/17_time_aggfuncs.test.out diff --git a/test/expected/19_time_selfuncs_tbl.test.out b/test/general/expected/19_time_selfuncs_tbl.test.out similarity index 100% rename from test/expected/19_time_selfuncs_tbl.test.out rename to test/general/expected/19_time_selfuncs_tbl.test.out diff --git a/test/expected/21_tbox.test.out b/test/general/expected/21_tbox.test.out similarity index 100% rename from test/expected/21_tbox.test.out rename to test/general/expected/21_tbox.test.out diff --git a/test/expected/22_temporal.test.out b/test/general/expected/22_temporal.test.out similarity index 100% rename from test/expected/22_temporal.test.out rename to test/general/expected/22_temporal.test.out diff --git a/test/expected/22_temporal_tbl.test.out b/test/general/expected/22_temporal_tbl.test.out similarity index 100% rename from test/expected/22_temporal_tbl.test.out rename to test/general/expected/22_temporal_tbl.test.out diff --git a/test/expected/23_bucket.test.out b/test/general/expected/23_bucket.test.out similarity index 100% rename from test/expected/23_bucket.test.out rename to test/general/expected/23_bucket.test.out diff --git a/test/expected/23_temporal_tile.test.out b/test/general/expected/23_temporal_tile.test.out similarity index 100% rename from test/expected/23_temporal_tile.test.out rename to test/general/expected/23_temporal_tile.test.out diff --git a/test/expected/23_temporal_tile_tbl.test.out b/test/general/expected/23_temporal_tile_tbl.test.out similarity index 100% rename from test/expected/23_temporal_tile_tbl.test.out rename to test/general/expected/23_temporal_tile_tbl.test.out diff --git a/test/expected/24_tnumber_mathfuncs.test.out b/test/general/expected/24_tnumber_mathfuncs.test.out similarity index 100% rename from test/expected/24_tnumber_mathfuncs.test.out rename to test/general/expected/24_tnumber_mathfuncs.test.out diff --git a/test/expected/24_tnumber_mathfuncs_tbl.test.out b/test/general/expected/24_tnumber_mathfuncs_tbl.test.out similarity index 100% rename from test/expected/24_tnumber_mathfuncs_tbl.test.out rename to test/general/expected/24_tnumber_mathfuncs_tbl.test.out diff --git a/test/expected/26_tbool_boolops.test.out b/test/general/expected/26_tbool_boolops.test.out similarity index 100% rename from test/expected/26_tbool_boolops.test.out rename to test/general/expected/26_tbool_boolops.test.out diff --git a/test/expected/26_tbool_boolops_tbl.test.out b/test/general/expected/26_tbool_boolops_tbl.test.out similarity index 100% rename from test/expected/26_tbool_boolops_tbl.test.out rename to test/general/expected/26_tbool_boolops_tbl.test.out diff --git a/test/expected/27_ttext_textfuncs.test.out b/test/general/expected/27_ttext_textfuncs.test.out similarity index 100% rename from test/expected/27_ttext_textfuncs.test.out rename to test/general/expected/27_ttext_textfuncs.test.out diff --git a/test/expected/27_ttext_textfuncs_tbl.test.out b/test/general/expected/27_ttext_textfuncs_tbl.test.out similarity index 100% rename from test/expected/27_ttext_textfuncs_tbl.test.out rename to test/general/expected/27_ttext_textfuncs_tbl.test.out diff --git a/test/expected/28_temporal_compops.test.out b/test/general/expected/28_temporal_compops.test.out similarity index 100% rename from test/expected/28_temporal_compops.test.out rename to test/general/expected/28_temporal_compops.test.out diff --git a/test/expected/28_temporal_compops_tbl.test.out b/test/general/expected/28_temporal_compops_tbl.test.out similarity index 100% rename from test/expected/28_temporal_compops_tbl.test.out rename to test/general/expected/28_temporal_compops_tbl.test.out diff --git a/test/expected/30_temporal_selfuncs_tbl.test.out b/test/general/expected/30_temporal_selfuncs_tbl.test.out similarity index 100% rename from test/expected/30_temporal_selfuncs_tbl.test.out rename to test/general/expected/30_temporal_selfuncs_tbl.test.out diff --git a/test/expected/32_temporal_box.test.out b/test/general/expected/32_temporal_box.test.out similarity index 100% rename from test/expected/32_temporal_box.test.out rename to test/general/expected/32_temporal_box.test.out diff --git a/test/expected/32_temporal_box_tbl.test.out b/test/general/expected/32_temporal_box_tbl.test.out similarity index 100% rename from test/expected/32_temporal_box_tbl.test.out rename to test/general/expected/32_temporal_box_tbl.test.out diff --git a/test/expected/32_temporal_boxops.test.out b/test/general/expected/32_temporal_boxops.test.out similarity index 100% rename from test/expected/32_temporal_boxops.test.out rename to test/general/expected/32_temporal_boxops.test.out diff --git a/test/expected/32_temporal_boxops_tbl.test.out b/test/general/expected/32_temporal_boxops_tbl.test.out similarity index 100% rename from test/expected/32_temporal_boxops_tbl.test.out rename to test/general/expected/32_temporal_boxops_tbl.test.out diff --git a/test/expected/33_temporal_boxops_spgist_pg11.test.out b/test/general/expected/33_temporal_boxops_spgist_pg11.test.out similarity index 100% rename from test/expected/33_temporal_boxops_spgist_pg11.test.out rename to test/general/expected/33_temporal_boxops_spgist_pg11.test.out diff --git a/test/expected/34_temporal_posops.test.out b/test/general/expected/34_temporal_posops.test.out similarity index 100% rename from test/expected/34_temporal_posops.test.out rename to test/general/expected/34_temporal_posops.test.out diff --git a/test/expected/34_temporal_posops_tbl.test.out b/test/general/expected/34_temporal_posops_tbl.test.out similarity index 100% rename from test/expected/34_temporal_posops_tbl.test.out rename to test/general/expected/34_temporal_posops_tbl.test.out diff --git a/test/expected/35_temporal_posops_spgist_pg11.test.out b/test/general/expected/35_temporal_posops_spgist_pg11.test.out similarity index 100% rename from test/expected/35_temporal_posops_spgist_pg11.test.out rename to test/general/expected/35_temporal_posops_spgist_pg11.test.out diff --git a/test/expected/36_tnumber_distance.test.out b/test/general/expected/36_tnumber_distance.test.out similarity index 100% rename from test/expected/36_tnumber_distance.test.out rename to test/general/expected/36_tnumber_distance.test.out diff --git a/test/expected/36_tnumber_distance_tbl.test.out b/test/general/expected/36_tnumber_distance_tbl.test.out similarity index 100% rename from test/expected/36_tnumber_distance_tbl.test.out rename to test/general/expected/36_tnumber_distance_tbl.test.out diff --git a/test/expected/38_temporal_aggfuncs.test.out b/test/general/expected/38_temporal_aggfuncs.test.out similarity index 100% rename from test/expected/38_temporal_aggfuncs.test.out rename to test/general/expected/38_temporal_aggfuncs.test.out diff --git a/test/expected/38_temporal_aggfuncs_tbl.test.out b/test/general/expected/38_temporal_aggfuncs_tbl.test.out similarity index 100% rename from test/expected/38_temporal_aggfuncs_tbl.test.out rename to test/general/expected/38_temporal_aggfuncs_tbl.test.out diff --git a/test/expected/40_temporal_waggfuncs.test.out b/test/general/expected/40_temporal_waggfuncs.test.out similarity index 100% rename from test/expected/40_temporal_waggfuncs.test.out rename to test/general/expected/40_temporal_waggfuncs.test.out diff --git a/test/expected/40_temporal_waggfuncs_tbl.test.out b/test/general/expected/40_temporal_waggfuncs_tbl.test.out similarity index 100% rename from test/expected/40_temporal_waggfuncs_tbl.test.out rename to test/general/expected/40_temporal_waggfuncs_tbl.test.out diff --git a/test/expected/42_temporal_indexes_tbl.test.out b/test/general/expected/42_temporal_indexes_tbl.test.out similarity index 100% rename from test/expected/42_temporal_indexes_tbl.test.out rename to test/general/expected/42_temporal_indexes_tbl.test.out diff --git a/test/expected/44_temporal_indexes_spgist_pg11.test.out b/test/general/expected/44_temporal_indexes_spgist_pg11.test.out similarity index 100% rename from test/expected/44_temporal_indexes_spgist_pg11.test.out rename to test/general/expected/44_temporal_indexes_spgist_pg11.test.out diff --git a/test/expected/46_tnumber_selfuncs_tbl.test.out b/test/general/expected/46_tnumber_selfuncs_tbl.test.out similarity index 100% rename from test/expected/46_tnumber_selfuncs_tbl.test.out rename to test/general/expected/46_tnumber_selfuncs_tbl.test.out diff --git a/test/queries/01_period.test.sql b/test/general/queries/01_period.test.sql similarity index 100% rename from test/queries/01_period.test.sql rename to test/general/queries/01_period.test.sql diff --git a/test/queries/01_period_hash_extended_pg11.test.sql b/test/general/queries/01_period_hash_extended_pg11.test.sql similarity index 100% rename from test/queries/01_period_hash_extended_pg11.test.sql rename to test/general/queries/01_period_hash_extended_pg11.test.sql diff --git a/test/queries/01_period_tbl.test.sql b/test/general/queries/01_period_tbl.test.sql similarity index 100% rename from test/queries/01_period_tbl.test.sql rename to test/general/queries/01_period_tbl.test.sql diff --git a/test/queries/03_timestampset.test.sql b/test/general/queries/03_timestampset.test.sql similarity index 100% rename from test/queries/03_timestampset.test.sql rename to test/general/queries/03_timestampset.test.sql diff --git a/test/queries/03_timestampset_tbl.test.sql b/test/general/queries/03_timestampset_tbl.test.sql similarity index 100% rename from test/queries/03_timestampset_tbl.test.sql rename to test/general/queries/03_timestampset_tbl.test.sql diff --git a/test/queries/05_periodset.test.sql b/test/general/queries/05_periodset.test.sql similarity index 100% rename from test/queries/05_periodset.test.sql rename to test/general/queries/05_periodset.test.sql diff --git a/test/queries/05_periodset_tbl.test.sql b/test/general/queries/05_periodset_tbl.test.sql similarity index 100% rename from test/queries/05_periodset_tbl.test.sql rename to test/general/queries/05_periodset_tbl.test.sql diff --git a/test/queries/07_rangetype_ext.test.sql b/test/general/queries/07_rangetype_ext.test.sql similarity index 100% rename from test/queries/07_rangetype_ext.test.sql rename to test/general/queries/07_rangetype_ext.test.sql diff --git a/test/queries/07_rangetype_ext_tbl.test.sql b/test/general/queries/07_rangetype_ext_tbl.test.sql similarity index 100% rename from test/queries/07_rangetype_ext_tbl.test.sql rename to test/general/queries/07_rangetype_ext_tbl.test.sql diff --git a/test/queries/11_timeops.test.sql b/test/general/queries/11_timeops.test.sql similarity index 100% rename from test/queries/11_timeops.test.sql rename to test/general/queries/11_timeops.test.sql diff --git a/test/queries/11_timeops_indexes.test.sql b/test/general/queries/11_timeops_indexes.test.sql similarity index 100% rename from test/queries/11_timeops_indexes.test.sql rename to test/general/queries/11_timeops_indexes.test.sql diff --git a/test/queries/11_timeops_indexes_tbl.test.sql b/test/general/queries/11_timeops_indexes_tbl.test.sql similarity index 100% rename from test/queries/11_timeops_indexes_tbl.test.sql rename to test/general/queries/11_timeops_indexes_tbl.test.sql diff --git a/test/queries/11_timeops_tbl.test.sql b/test/general/queries/11_timeops_tbl.test.sql similarity index 100% rename from test/queries/11_timeops_tbl.test.sql rename to test/general/queries/11_timeops_tbl.test.sql diff --git a/test/queries/13_time_indexes_tbl.test.sql b/test/general/queries/13_time_indexes_tbl.test.sql similarity index 100% rename from test/queries/13_time_indexes_tbl.test.sql rename to test/general/queries/13_time_indexes_tbl.test.sql diff --git a/test/queries/15_time_spgist_pg11.test.sql b/test/general/queries/15_time_spgist_pg11.test.sql similarity index 100% rename from test/queries/15_time_spgist_pg11.test.sql rename to test/general/queries/15_time_spgist_pg11.test.sql diff --git a/test/queries/17_time_aggfuncs.test.sql b/test/general/queries/17_time_aggfuncs.test.sql similarity index 100% rename from test/queries/17_time_aggfuncs.test.sql rename to test/general/queries/17_time_aggfuncs.test.sql diff --git a/test/queries/19_time_selfuncs_tbl.test.sql b/test/general/queries/19_time_selfuncs_tbl.test.sql similarity index 100% rename from test/queries/19_time_selfuncs_tbl.test.sql rename to test/general/queries/19_time_selfuncs_tbl.test.sql diff --git a/test/queries/21_tbox.test.sql b/test/general/queries/21_tbox.test.sql similarity index 100% rename from test/queries/21_tbox.test.sql rename to test/general/queries/21_tbox.test.sql diff --git a/test/queries/22_temporal.test.sql b/test/general/queries/22_temporal.test.sql similarity index 100% rename from test/queries/22_temporal.test.sql rename to test/general/queries/22_temporal.test.sql diff --git a/test/queries/22_temporal_tbl.test.sql b/test/general/queries/22_temporal_tbl.test.sql similarity index 100% rename from test/queries/22_temporal_tbl.test.sql rename to test/general/queries/22_temporal_tbl.test.sql diff --git a/test/queries/23_temporal_tile.test.sql b/test/general/queries/23_temporal_tile.test.sql similarity index 100% rename from test/queries/23_temporal_tile.test.sql rename to test/general/queries/23_temporal_tile.test.sql diff --git a/test/queries/23_temporal_tile_tbl.test.sql b/test/general/queries/23_temporal_tile_tbl.test.sql similarity index 100% rename from test/queries/23_temporal_tile_tbl.test.sql rename to test/general/queries/23_temporal_tile_tbl.test.sql diff --git a/test/queries/24_tnumber_mathfuncs.test.sql b/test/general/queries/24_tnumber_mathfuncs.test.sql similarity index 100% rename from test/queries/24_tnumber_mathfuncs.test.sql rename to test/general/queries/24_tnumber_mathfuncs.test.sql diff --git a/test/queries/24_tnumber_mathfuncs_tbl.test.sql b/test/general/queries/24_tnumber_mathfuncs_tbl.test.sql similarity index 100% rename from test/queries/24_tnumber_mathfuncs_tbl.test.sql rename to test/general/queries/24_tnumber_mathfuncs_tbl.test.sql diff --git a/test/queries/26_tbool_boolops.test.sql b/test/general/queries/26_tbool_boolops.test.sql similarity index 100% rename from test/queries/26_tbool_boolops.test.sql rename to test/general/queries/26_tbool_boolops.test.sql diff --git a/test/queries/26_tbool_boolops_tbl.test.sql b/test/general/queries/26_tbool_boolops_tbl.test.sql similarity index 100% rename from test/queries/26_tbool_boolops_tbl.test.sql rename to test/general/queries/26_tbool_boolops_tbl.test.sql diff --git a/test/queries/27_ttext_textfuncs.test.sql b/test/general/queries/27_ttext_textfuncs.test.sql similarity index 100% rename from test/queries/27_ttext_textfuncs.test.sql rename to test/general/queries/27_ttext_textfuncs.test.sql diff --git a/test/queries/27_ttext_textfuncs_tbl.test.sql b/test/general/queries/27_ttext_textfuncs_tbl.test.sql similarity index 100% rename from test/queries/27_ttext_textfuncs_tbl.test.sql rename to test/general/queries/27_ttext_textfuncs_tbl.test.sql diff --git a/test/queries/28_temporal_compops.test.sql b/test/general/queries/28_temporal_compops.test.sql similarity index 100% rename from test/queries/28_temporal_compops.test.sql rename to test/general/queries/28_temporal_compops.test.sql diff --git a/test/queries/28_temporal_compops_tbl.test.sql b/test/general/queries/28_temporal_compops_tbl.test.sql similarity index 100% rename from test/queries/28_temporal_compops_tbl.test.sql rename to test/general/queries/28_temporal_compops_tbl.test.sql diff --git a/test/queries/30_temporal_selfuncs_tbl.test.sql b/test/general/queries/30_temporal_selfuncs_tbl.test.sql similarity index 100% rename from test/queries/30_temporal_selfuncs_tbl.test.sql rename to test/general/queries/30_temporal_selfuncs_tbl.test.sql diff --git a/test/queries/32_temporal_box.test.sql b/test/general/queries/32_temporal_box.test.sql similarity index 100% rename from test/queries/32_temporal_box.test.sql rename to test/general/queries/32_temporal_box.test.sql diff --git a/test/queries/32_temporal_boxops.test.sql b/test/general/queries/32_temporal_boxops.test.sql similarity index 100% rename from test/queries/32_temporal_boxops.test.sql rename to test/general/queries/32_temporal_boxops.test.sql diff --git a/test/queries/32_temporal_boxops_tbl.test.sql b/test/general/queries/32_temporal_boxops_tbl.test.sql similarity index 100% rename from test/queries/32_temporal_boxops_tbl.test.sql rename to test/general/queries/32_temporal_boxops_tbl.test.sql diff --git a/test/queries/33_temporal_boxops_spgist_pg11.test.sql b/test/general/queries/33_temporal_boxops_spgist_pg11.test.sql similarity index 100% rename from test/queries/33_temporal_boxops_spgist_pg11.test.sql rename to test/general/queries/33_temporal_boxops_spgist_pg11.test.sql diff --git a/test/queries/34_temporal_posops.test.sql b/test/general/queries/34_temporal_posops.test.sql similarity index 100% rename from test/queries/34_temporal_posops.test.sql rename to test/general/queries/34_temporal_posops.test.sql diff --git a/test/queries/34_temporal_posops_tbl.test.sql b/test/general/queries/34_temporal_posops_tbl.test.sql similarity index 100% rename from test/queries/34_temporal_posops_tbl.test.sql rename to test/general/queries/34_temporal_posops_tbl.test.sql diff --git a/test/queries/35_temporal_posops_spgist_pg11.test.sql b/test/general/queries/35_temporal_posops_spgist_pg11.test.sql similarity index 100% rename from test/queries/35_temporal_posops_spgist_pg11.test.sql rename to test/general/queries/35_temporal_posops_spgist_pg11.test.sql diff --git a/test/queries/36_tnumber_distance.test.sql b/test/general/queries/36_tnumber_distance.test.sql similarity index 100% rename from test/queries/36_tnumber_distance.test.sql rename to test/general/queries/36_tnumber_distance.test.sql diff --git a/test/queries/36_tnumber_distance_tbl.test.sql b/test/general/queries/36_tnumber_distance_tbl.test.sql similarity index 100% rename from test/queries/36_tnumber_distance_tbl.test.sql rename to test/general/queries/36_tnumber_distance_tbl.test.sql diff --git a/test/queries/38_temporal_aggfuncs.test.sql b/test/general/queries/38_temporal_aggfuncs.test.sql similarity index 100% rename from test/queries/38_temporal_aggfuncs.test.sql rename to test/general/queries/38_temporal_aggfuncs.test.sql diff --git a/test/queries/38_temporal_aggfuncs_tbl.test.sql b/test/general/queries/38_temporal_aggfuncs_tbl.test.sql similarity index 100% rename from test/queries/38_temporal_aggfuncs_tbl.test.sql rename to test/general/queries/38_temporal_aggfuncs_tbl.test.sql diff --git a/test/queries/40_temporal_waggfuncs.test.sql b/test/general/queries/40_temporal_waggfuncs.test.sql similarity index 100% rename from test/queries/40_temporal_waggfuncs.test.sql rename to test/general/queries/40_temporal_waggfuncs.test.sql diff --git a/test/queries/40_temporal_waggfuncs_tbl.test.sql b/test/general/queries/40_temporal_waggfuncs_tbl.test.sql similarity index 100% rename from test/queries/40_temporal_waggfuncs_tbl.test.sql rename to test/general/queries/40_temporal_waggfuncs_tbl.test.sql diff --git a/test/queries/42_temporal_indexes_tbl.test.sql b/test/general/queries/42_temporal_indexes_tbl.test.sql similarity index 100% rename from test/queries/42_temporal_indexes_tbl.test.sql rename to test/general/queries/42_temporal_indexes_tbl.test.sql diff --git a/test/queries/44_temporal_indexes_spgist_pg11.test.sql b/test/general/queries/44_temporal_indexes_spgist_pg11.test.sql similarity index 100% rename from test/queries/44_temporal_indexes_spgist_pg11.test.sql rename to test/general/queries/44_temporal_indexes_spgist_pg11.test.sql diff --git a/test/queries/46_tnumber_selfuncs_tbl.test.sql b/test/general/queries/46_tnumber_selfuncs_tbl.test.sql similarity index 100% rename from test/queries/46_tnumber_selfuncs_tbl.test.sql rename to test/general/queries/46_tnumber_selfuncs_tbl.test.sql diff --git a/test/npoint/CMakeLists.txt b/test/npoint/CMakeLists.txt new file mode 100644 index 0000000000..15a6d04e81 --- /dev/null +++ b/test/npoint/CMakeLists.txt @@ -0,0 +1,34 @@ +add_test( + NAME load_npoint_tables + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/test/scripts + COMMAND test.sh run_passfail load_npoint_tables "data/load.sql.xz" +) + +set_tests_properties(load_npoint_tables PROPERTIES + DEPENDS create_extension + FIXTURES_SETUP DBNPOINT + FIXTURES_REQUIRED DBGEO) + +file(GLOB testfiles "queries/*.sql") +list(SORT testfiles) + +foreach(file ${testfiles}) + get_filename_component(TESTNAME ${file} NAME_WE) + set(DOTEST TRUE) + if(${TESTNAME} MATCHES "_pg([0-9]+)") + if(${PG_MAJOR_VERSION} LESS ${CMAKE_MATCH_1}) + message("Disabling test ${TESTNAME}") + set(DOTEST FALSE) + endif() + endif() + if(DOTEST) + add_test( + NAME ${TESTNAME} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/test/scripts + COMMAND test.sh run_compare ${TESTNAME} ${file} + ) + set_tests_properties(${TESTNAME} PROPERTIES + FIXTURES_REQUIRED DB + RESOURCE_LOCK DBLOCK) + endif() +endforeach() diff --git a/npoint/test/scripts/load.sql.xz b/test/npoint/data/load.sql.xz similarity index 100% rename from npoint/test/scripts/load.sql.xz rename to test/npoint/data/load.sql.xz diff --git a/npoint/test/expected/81_tnpoint_static.test.out b/test/npoint/expected/81_tnpoint_static.test.out similarity index 100% rename from npoint/test/expected/81_tnpoint_static.test.out rename to test/npoint/expected/81_tnpoint_static.test.out diff --git a/npoint/test/expected/81_tnpoint_static_tbl.test.out b/test/npoint/expected/81_tnpoint_static_tbl.test.out similarity index 100% rename from npoint/test/expected/81_tnpoint_static_tbl.test.out rename to test/npoint/expected/81_tnpoint_static_tbl.test.out diff --git a/npoint/test/expected/83_tnpoint.test.out b/test/npoint/expected/83_tnpoint.test.out similarity index 100% rename from npoint/test/expected/83_tnpoint.test.out rename to test/npoint/expected/83_tnpoint.test.out diff --git a/npoint/test/expected/83_tnpoint_tbl.test.out b/test/npoint/expected/83_tnpoint_tbl.test.out similarity index 100% rename from npoint/test/expected/83_tnpoint_tbl.test.out rename to test/npoint/expected/83_tnpoint_tbl.test.out diff --git a/npoint/test/expected/85_tnpoint_compops.test.out b/test/npoint/expected/85_tnpoint_compops.test.out similarity index 100% rename from npoint/test/expected/85_tnpoint_compops.test.out rename to test/npoint/expected/85_tnpoint_compops.test.out diff --git a/npoint/test/expected/85_tnpoint_compops_tbl.test.out b/test/npoint/expected/85_tnpoint_compops_tbl.test.out similarity index 100% rename from npoint/test/expected/85_tnpoint_compops_tbl.test.out rename to test/npoint/expected/85_tnpoint_compops_tbl.test.out diff --git a/npoint/test/expected/87_tnpoint_spatialfuncs.test.out b/test/npoint/expected/87_tnpoint_spatialfuncs.test.out similarity index 100% rename from npoint/test/expected/87_tnpoint_spatialfuncs.test.out rename to test/npoint/expected/87_tnpoint_spatialfuncs.test.out diff --git a/npoint/test/expected/87_tnpoint_spatialfuncs_tbl.test.out b/test/npoint/expected/87_tnpoint_spatialfuncs_tbl.test.out similarity index 100% rename from npoint/test/expected/87_tnpoint_spatialfuncs_tbl.test.out rename to test/npoint/expected/87_tnpoint_spatialfuncs_tbl.test.out diff --git a/npoint/test/expected/89_tnpoint_boxops.test.out b/test/npoint/expected/89_tnpoint_boxops.test.out similarity index 100% rename from npoint/test/expected/89_tnpoint_boxops.test.out rename to test/npoint/expected/89_tnpoint_boxops.test.out diff --git a/npoint/test/expected/89_tnpoint_boxops_tbl.test.out b/test/npoint/expected/89_tnpoint_boxops_tbl.test.out similarity index 100% rename from npoint/test/expected/89_tnpoint_boxops_tbl.test.out rename to test/npoint/expected/89_tnpoint_boxops_tbl.test.out diff --git a/npoint/test/expected/90_tnpoint_boxops_spgist_pg11.test.out b/test/npoint/expected/90_tnpoint_boxops_spgist_pg11.test.out similarity index 100% rename from npoint/test/expected/90_tnpoint_boxops_spgist_pg11.test.out rename to test/npoint/expected/90_tnpoint_boxops_spgist_pg11.test.out diff --git a/npoint/test/expected/91_tnpoint_posops.test.out b/test/npoint/expected/91_tnpoint_posops.test.out similarity index 100% rename from npoint/test/expected/91_tnpoint_posops.test.out rename to test/npoint/expected/91_tnpoint_posops.test.out diff --git a/npoint/test/expected/91_tnpoint_posops_tbl.test.out b/test/npoint/expected/91_tnpoint_posops_tbl.test.out similarity index 100% rename from npoint/test/expected/91_tnpoint_posops_tbl.test.out rename to test/npoint/expected/91_tnpoint_posops_tbl.test.out diff --git a/npoint/test/expected/92_tnpoint_posops_spgist_pg11.test.out b/test/npoint/expected/92_tnpoint_posops_spgist_pg11.test.out similarity index 100% rename from npoint/test/expected/92_tnpoint_posops_spgist_pg11.test.out rename to test/npoint/expected/92_tnpoint_posops_spgist_pg11.test.out diff --git a/npoint/test/expected/93_tnpoint_distance.test.out b/test/npoint/expected/93_tnpoint_distance.test.out similarity index 100% rename from npoint/test/expected/93_tnpoint_distance.test.out rename to test/npoint/expected/93_tnpoint_distance.test.out diff --git a/npoint/test/expected/93_tnpoint_distance_tbl.test.out b/test/npoint/expected/93_tnpoint_distance_tbl.test.out similarity index 100% rename from npoint/test/expected/93_tnpoint_distance_tbl.test.out rename to test/npoint/expected/93_tnpoint_distance_tbl.test.out diff --git a/npoint/test/expected/95_tnpoint_aggfuncs_tbl.test.out b/test/npoint/expected/95_tnpoint_aggfuncs_tbl.test.out similarity index 100% rename from npoint/test/expected/95_tnpoint_aggfuncs_tbl.test.out rename to test/npoint/expected/95_tnpoint_aggfuncs_tbl.test.out diff --git a/npoint/test/expected/96_tnpoint_spatialrels.test.out b/test/npoint/expected/96_tnpoint_spatialrels.test.out similarity index 100% rename from npoint/test/expected/96_tnpoint_spatialrels.test.out rename to test/npoint/expected/96_tnpoint_spatialrels.test.out diff --git a/npoint/test/expected/96_tnpoint_spatialrels_tbl.test.out b/test/npoint/expected/96_tnpoint_spatialrels_tbl.test.out similarity index 100% rename from npoint/test/expected/96_tnpoint_spatialrels_tbl.test.out rename to test/npoint/expected/96_tnpoint_spatialrels_tbl.test.out diff --git a/npoint/test/expected/97_tnpoint_tempspatialrels.test.out b/test/npoint/expected/97_tnpoint_tempspatialrels.test.out similarity index 100% rename from npoint/test/expected/97_tnpoint_tempspatialrels.test.out rename to test/npoint/expected/97_tnpoint_tempspatialrels.test.out diff --git a/npoint/test/expected/97_tnpoint_tempspatialrels_tbl.test.out b/test/npoint/expected/97_tnpoint_tempspatialrels_tbl.test.out similarity index 100% rename from npoint/test/expected/97_tnpoint_tempspatialrels_tbl.test.out rename to test/npoint/expected/97_tnpoint_tempspatialrels_tbl.test.out diff --git a/npoint/test/queries/81_tnpoint_static.test.sql b/test/npoint/queries/81_tnpoint_static.test.sql similarity index 100% rename from npoint/test/queries/81_tnpoint_static.test.sql rename to test/npoint/queries/81_tnpoint_static.test.sql diff --git a/npoint/test/queries/81_tnpoint_static_tbl.test.sql b/test/npoint/queries/81_tnpoint_static_tbl.test.sql similarity index 100% rename from npoint/test/queries/81_tnpoint_static_tbl.test.sql rename to test/npoint/queries/81_tnpoint_static_tbl.test.sql diff --git a/npoint/test/queries/83_tnpoint.test.sql b/test/npoint/queries/83_tnpoint.test.sql similarity index 100% rename from npoint/test/queries/83_tnpoint.test.sql rename to test/npoint/queries/83_tnpoint.test.sql diff --git a/npoint/test/queries/83_tnpoint_tbl.test.sql b/test/npoint/queries/83_tnpoint_tbl.test.sql similarity index 100% rename from npoint/test/queries/83_tnpoint_tbl.test.sql rename to test/npoint/queries/83_tnpoint_tbl.test.sql diff --git a/npoint/test/queries/85_tnpoint_compops.test.sql b/test/npoint/queries/85_tnpoint_compops.test.sql similarity index 100% rename from npoint/test/queries/85_tnpoint_compops.test.sql rename to test/npoint/queries/85_tnpoint_compops.test.sql diff --git a/npoint/test/queries/85_tnpoint_compops_tbl.test.sql b/test/npoint/queries/85_tnpoint_compops_tbl.test.sql similarity index 100% rename from npoint/test/queries/85_tnpoint_compops_tbl.test.sql rename to test/npoint/queries/85_tnpoint_compops_tbl.test.sql diff --git a/npoint/test/queries/87_tnpoint_spatialfuncs.test.sql b/test/npoint/queries/87_tnpoint_spatialfuncs.test.sql similarity index 100% rename from npoint/test/queries/87_tnpoint_spatialfuncs.test.sql rename to test/npoint/queries/87_tnpoint_spatialfuncs.test.sql diff --git a/npoint/test/queries/87_tnpoint_spatialfuncs_tbl.test.sql b/test/npoint/queries/87_tnpoint_spatialfuncs_tbl.test.sql similarity index 100% rename from npoint/test/queries/87_tnpoint_spatialfuncs_tbl.test.sql rename to test/npoint/queries/87_tnpoint_spatialfuncs_tbl.test.sql diff --git a/npoint/test/queries/89_tnpoint_boxops.test.sql b/test/npoint/queries/89_tnpoint_boxops.test.sql similarity index 100% rename from npoint/test/queries/89_tnpoint_boxops.test.sql rename to test/npoint/queries/89_tnpoint_boxops.test.sql diff --git a/npoint/test/queries/89_tnpoint_boxops_tbl.test.sql b/test/npoint/queries/89_tnpoint_boxops_tbl.test.sql similarity index 100% rename from npoint/test/queries/89_tnpoint_boxops_tbl.test.sql rename to test/npoint/queries/89_tnpoint_boxops_tbl.test.sql diff --git a/npoint/test/queries/90_tnpoint_boxops_spgist_pg11.test.sql b/test/npoint/queries/90_tnpoint_boxops_spgist_pg11.test.sql similarity index 100% rename from npoint/test/queries/90_tnpoint_boxops_spgist_pg11.test.sql rename to test/npoint/queries/90_tnpoint_boxops_spgist_pg11.test.sql diff --git a/npoint/test/queries/91_tnpoint_posops.test.sql b/test/npoint/queries/91_tnpoint_posops.test.sql similarity index 100% rename from npoint/test/queries/91_tnpoint_posops.test.sql rename to test/npoint/queries/91_tnpoint_posops.test.sql diff --git a/npoint/test/queries/91_tnpoint_posops_tbl.test.sql b/test/npoint/queries/91_tnpoint_posops_tbl.test.sql similarity index 100% rename from npoint/test/queries/91_tnpoint_posops_tbl.test.sql rename to test/npoint/queries/91_tnpoint_posops_tbl.test.sql diff --git a/npoint/test/queries/92_tnpoint_posops_spgist_pg11.test.sql b/test/npoint/queries/92_tnpoint_posops_spgist_pg11.test.sql similarity index 100% rename from npoint/test/queries/92_tnpoint_posops_spgist_pg11.test.sql rename to test/npoint/queries/92_tnpoint_posops_spgist_pg11.test.sql diff --git a/npoint/test/queries/93_tnpoint_distance.test.sql b/test/npoint/queries/93_tnpoint_distance.test.sql similarity index 100% rename from npoint/test/queries/93_tnpoint_distance.test.sql rename to test/npoint/queries/93_tnpoint_distance.test.sql diff --git a/npoint/test/queries/93_tnpoint_distance_tbl.test.sql b/test/npoint/queries/93_tnpoint_distance_tbl.test.sql similarity index 100% rename from npoint/test/queries/93_tnpoint_distance_tbl.test.sql rename to test/npoint/queries/93_tnpoint_distance_tbl.test.sql diff --git a/npoint/test/queries/95_tnpoint_aggfuncs_tbl.test.sql b/test/npoint/queries/95_tnpoint_aggfuncs_tbl.test.sql similarity index 100% rename from npoint/test/queries/95_tnpoint_aggfuncs_tbl.test.sql rename to test/npoint/queries/95_tnpoint_aggfuncs_tbl.test.sql diff --git a/npoint/test/queries/96_tnpoint_spatialrels.test.sql b/test/npoint/queries/96_tnpoint_spatialrels.test.sql similarity index 100% rename from npoint/test/queries/96_tnpoint_spatialrels.test.sql rename to test/npoint/queries/96_tnpoint_spatialrels.test.sql diff --git a/npoint/test/queries/96_tnpoint_spatialrels_tbl.test.sql b/test/npoint/queries/96_tnpoint_spatialrels_tbl.test.sql similarity index 100% rename from npoint/test/queries/96_tnpoint_spatialrels_tbl.test.sql rename to test/npoint/queries/96_tnpoint_spatialrels_tbl.test.sql diff --git a/npoint/test/queries/97_tnpoint_tempspatialrels.test.sql b/test/npoint/queries/97_tnpoint_tempspatialrels.test.sql similarity index 100% rename from npoint/test/queries/97_tnpoint_tempspatialrels.test.sql rename to test/npoint/queries/97_tnpoint_tempspatialrels.test.sql diff --git a/npoint/test/queries/97_tnpoint_tempspatialrels_tbl.test.sql b/test/npoint/queries/97_tnpoint_tempspatialrels_tbl.test.sql similarity index 100% rename from npoint/test/queries/97_tnpoint_tempspatialrels_tbl.test.sql rename to test/npoint/queries/97_tnpoint_tempspatialrels_tbl.test.sql diff --git a/test/point/CMakeLists.txt b/test/point/CMakeLists.txt new file mode 100644 index 0000000000..b48db1c175 --- /dev/null +++ b/test/point/CMakeLists.txt @@ -0,0 +1,35 @@ +add_test( + NAME load_geom_tables + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/test/scripts + COMMAND test.sh run_passfail load_geom_tables "data/load.sql.xz" + ) + +set_tests_properties(load_geom_tables PROPERTIES + DEPENDS create_extension + FIXTURES_SETUP DBGEO + FIXTURES_REQUIRED DB) + + +file(GLOB testfiles "queries/*.sql") +list(SORT testfiles) + +foreach(file ${testfiles}) + get_filename_component(TESTNAME ${file} NAME_WE) + set(DOTEST TRUE) + if(${TESTNAME} MATCHES "_pg([0-9]+)") + if(${PG_MAJOR_VERSION} LESS ${CMAKE_MATCH_1}) + message("Disabling test ${TESTNAME}") + set(DOTEST FALSE) + endif() + endif() + if(DOTEST) + add_test( + NAME ${TESTNAME} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/test/scripts + COMMAND test.sh run_compare ${TESTNAME} ${file} + ) + set_tests_properties(${TESTNAME} PROPERTIES + FIXTURES_REQUIRED DB + RESOURCE_LOCK DBLOCK) + endif() +endforeach() diff --git a/point/test/scripts/dump_test_tables_postgis.txt b/test/point/data/dump_test_tables_postgis.txt similarity index 100% rename from point/test/scripts/dump_test_tables_postgis.txt rename to test/point/data/dump_test_tables_postgis.txt diff --git a/point/test/scripts/dump_test_tables_postgis_small.txt b/test/point/data/dump_test_tables_postgis_small.txt similarity index 100% rename from point/test/scripts/dump_test_tables_postgis_small.txt rename to test/point/data/dump_test_tables_postgis_small.txt diff --git a/point/test/scripts/load.sql.xz b/test/point/data/load.sql.xz similarity index 100% rename from point/test/scripts/load.sql.xz rename to test/point/data/load.sql.xz diff --git a/point/test/expected/50_stbox.test.out b/test/point/expected/50_stbox.test.out similarity index 100% rename from point/test/expected/50_stbox.test.out rename to test/point/expected/50_stbox.test.out diff --git a/point/test/expected/51_tpoint.test.out b/test/point/expected/51_tpoint.test.out similarity index 100% rename from point/test/expected/51_tpoint.test.out rename to test/point/expected/51_tpoint.test.out diff --git a/point/test/expected/51_tpoint_tbl.test.out b/test/point/expected/51_tpoint_tbl.test.out similarity index 100% rename from point/test/expected/51_tpoint_tbl.test.out rename to test/point/expected/51_tpoint_tbl.test.out diff --git a/point/test/expected/52_tpoint_in.test.out b/test/point/expected/52_tpoint_in.test.out similarity index 100% rename from point/test/expected/52_tpoint_in.test.out rename to test/point/expected/52_tpoint_in.test.out diff --git a/point/test/expected/53_tpoint_out.test.out b/test/point/expected/53_tpoint_out.test.out similarity index 100% rename from point/test/expected/53_tpoint_out.test.out rename to test/point/expected/53_tpoint_out.test.out diff --git a/point/test/expected/53_tpoint_out_tbl.test.out b/test/point/expected/53_tpoint_out_tbl.test.out similarity index 100% rename from point/test/expected/53_tpoint_out_tbl.test.out rename to test/point/expected/53_tpoint_out_tbl.test.out diff --git a/point/test/expected/54_tpoint_compops.test.out b/test/point/expected/54_tpoint_compops.test.out similarity index 100% rename from point/test/expected/54_tpoint_compops.test.out rename to test/point/expected/54_tpoint_compops.test.out diff --git a/point/test/expected/54_tpoint_compops_tbl.test.out b/test/point/expected/54_tpoint_compops_tbl.test.out similarity index 100% rename from point/test/expected/54_tpoint_compops_tbl.test.out rename to test/point/expected/54_tpoint_compops_tbl.test.out diff --git a/point/test/expected/55_geography_funcs.test.out b/test/point/expected/55_geography_funcs.test.out similarity index 100% rename from point/test/expected/55_geography_funcs.test.out rename to test/point/expected/55_geography_funcs.test.out diff --git a/point/test/expected/56_tpoint_spatialfuncs.test.out b/test/point/expected/56_tpoint_spatialfuncs.test.out similarity index 100% rename from point/test/expected/56_tpoint_spatialfuncs.test.out rename to test/point/expected/56_tpoint_spatialfuncs.test.out diff --git a/point/test/expected/56_tpoint_spatialfuncs_tbl.test.out b/test/point/expected/56_tpoint_spatialfuncs_tbl.test.out similarity index 100% rename from point/test/expected/56_tpoint_spatialfuncs_tbl.test.out rename to test/point/expected/56_tpoint_spatialfuncs_tbl.test.out diff --git a/point/test/expected/57_tpoint_tile.test.out b/test/point/expected/57_tpoint_tile.test.out similarity index 100% rename from point/test/expected/57_tpoint_tile.test.out rename to test/point/expected/57_tpoint_tile.test.out diff --git a/point/test/expected/57_tpoint_tile_tbl.test.out b/test/point/expected/57_tpoint_tile_tbl.test.out similarity index 100% rename from point/test/expected/57_tpoint_tile_tbl.test.out rename to test/point/expected/57_tpoint_tile_tbl.test.out diff --git a/point/test/expected/58_tpoint_boxops.test.out b/test/point/expected/58_tpoint_boxops.test.out similarity index 100% rename from point/test/expected/58_tpoint_boxops.test.out rename to test/point/expected/58_tpoint_boxops.test.out diff --git a/point/test/expected/58_tpoint_boxops3d_tbl.test.out b/test/point/expected/58_tpoint_boxops3d_tbl.test.out similarity index 100% rename from point/test/expected/58_tpoint_boxops3d_tbl.test.out rename to test/point/expected/58_tpoint_boxops3d_tbl.test.out diff --git a/point/test/expected/58_tpoint_boxops_tbl.test.out b/test/point/expected/58_tpoint_boxops_tbl.test.out similarity index 100% rename from point/test/expected/58_tpoint_boxops_tbl.test.out rename to test/point/expected/58_tpoint_boxops_tbl.test.out diff --git a/point/test/expected/59_tpoint_boxops3d_spgist_pg11.test.out b/test/point/expected/59_tpoint_boxops3d_spgist_pg11.test.out similarity index 100% rename from point/test/expected/59_tpoint_boxops3d_spgist_pg11.test.out rename to test/point/expected/59_tpoint_boxops3d_spgist_pg11.test.out diff --git a/point/test/expected/59_tpoint_boxops_spgist_pg11.test.out b/test/point/expected/59_tpoint_boxops_spgist_pg11.test.out similarity index 100% rename from point/test/expected/59_tpoint_boxops_spgist_pg11.test.out rename to test/point/expected/59_tpoint_boxops_spgist_pg11.test.out diff --git a/point/test/expected/60_tpoint_posops.test.out b/test/point/expected/60_tpoint_posops.test.out similarity index 100% rename from point/test/expected/60_tpoint_posops.test.out rename to test/point/expected/60_tpoint_posops.test.out diff --git a/point/test/expected/60_tpoint_posops3d_tbl.test.out b/test/point/expected/60_tpoint_posops3d_tbl.test.out similarity index 100% rename from point/test/expected/60_tpoint_posops3d_tbl.test.out rename to test/point/expected/60_tpoint_posops3d_tbl.test.out diff --git a/point/test/expected/60_tpoint_posops_tbl.test.out b/test/point/expected/60_tpoint_posops_tbl.test.out similarity index 100% rename from point/test/expected/60_tpoint_posops_tbl.test.out rename to test/point/expected/60_tpoint_posops_tbl.test.out diff --git a/point/test/expected/61_tpoint_posops3d_spgist_pg11.test.out b/test/point/expected/61_tpoint_posops3d_spgist_pg11.test.out similarity index 100% rename from point/test/expected/61_tpoint_posops3d_spgist_pg11.test.out rename to test/point/expected/61_tpoint_posops3d_spgist_pg11.test.out diff --git a/point/test/expected/61_tpoint_posops_spgist_pg11.test.out b/test/point/expected/61_tpoint_posops_spgist_pg11.test.out similarity index 100% rename from point/test/expected/61_tpoint_posops_spgist_pg11.test.out rename to test/point/expected/61_tpoint_posops_spgist_pg11.test.out diff --git a/point/test/expected/62_tpoint_distance.test.out b/test/point/expected/62_tpoint_distance.test.out similarity index 100% rename from point/test/expected/62_tpoint_distance.test.out rename to test/point/expected/62_tpoint_distance.test.out diff --git a/point/test/expected/62_tpoint_distance_tbl.test.out b/test/point/expected/62_tpoint_distance_tbl.test.out similarity index 100% rename from point/test/expected/62_tpoint_distance_tbl.test.out rename to test/point/expected/62_tpoint_distance_tbl.test.out diff --git a/point/test/expected/64_tpoint_aggfuncs.test.out b/test/point/expected/64_tpoint_aggfuncs.test.out similarity index 100% rename from point/test/expected/64_tpoint_aggfuncs.test.out rename to test/point/expected/64_tpoint_aggfuncs.test.out diff --git a/point/test/expected/64_tpoint_aggfuncs_tbl.test.out b/test/point/expected/64_tpoint_aggfuncs_tbl.test.out similarity index 100% rename from point/test/expected/64_tpoint_aggfuncs_tbl.test.out rename to test/point/expected/64_tpoint_aggfuncs_tbl.test.out diff --git a/point/test/expected/66_tpoint_spatialrels.test.out b/test/point/expected/66_tpoint_spatialrels.test.out similarity index 100% rename from point/test/expected/66_tpoint_spatialrels.test.out rename to test/point/expected/66_tpoint_spatialrels.test.out diff --git a/point/test/expected/66_tpoint_spatialrels_tbl.test.out b/test/point/expected/66_tpoint_spatialrels_tbl.test.out similarity index 100% rename from point/test/expected/66_tpoint_spatialrels_tbl.test.out rename to test/point/expected/66_tpoint_spatialrels_tbl.test.out diff --git a/point/test/expected/68_tpoint_tempspatialrels.test.out b/test/point/expected/68_tpoint_tempspatialrels.test.out similarity index 100% rename from point/test/expected/68_tpoint_tempspatialrels.test.out rename to test/point/expected/68_tpoint_tempspatialrels.test.out diff --git a/point/test/expected/68_tpoint_tempspatialrels_tbl.test.out b/test/point/expected/68_tpoint_tempspatialrels_tbl.test.out similarity index 100% rename from point/test/expected/68_tpoint_tempspatialrels_tbl.test.out rename to test/point/expected/68_tpoint_tempspatialrels_tbl.test.out diff --git a/point/test/expected/70_tpoint_indexes_tbl.test.out b/test/point/expected/70_tpoint_indexes_tbl.test.out similarity index 100% rename from point/test/expected/70_tpoint_indexes_tbl.test.out rename to test/point/expected/70_tpoint_indexes_tbl.test.out diff --git a/point/test/expected/72_tpoint_indexes_spgist_pg11.test.out b/test/point/expected/72_tpoint_indexes_spgist_pg11.test.out similarity index 100% rename from point/test/expected/72_tpoint_indexes_spgist_pg11.test.out rename to test/point/expected/72_tpoint_indexes_spgist_pg11.test.out diff --git a/point/test/expected/73_tpoint_indexes_spgist_pg12.test.out b/test/point/expected/73_tpoint_indexes_spgist_pg12.test.out similarity index 100% rename from point/test/expected/73_tpoint_indexes_spgist_pg12.test.out rename to test/point/expected/73_tpoint_indexes_spgist_pg12.test.out diff --git a/point/test/expected/76_tpoint_analytics.test.out b/test/point/expected/76_tpoint_analytics.test.out similarity index 100% rename from point/test/expected/76_tpoint_analytics.test.out rename to test/point/expected/76_tpoint_analytics.test.out diff --git a/point/test/expected/76_tpoint_analytics_tbl.test.out b/test/point/expected/76_tpoint_analytics_tbl.test.out similarity index 100% rename from point/test/expected/76_tpoint_analytics_tbl.test.out rename to test/point/expected/76_tpoint_analytics_tbl.test.out diff --git a/point/test/queries/50_stbox.test.sql b/test/point/queries/50_stbox.test.sql similarity index 100% rename from point/test/queries/50_stbox.test.sql rename to test/point/queries/50_stbox.test.sql diff --git a/point/test/queries/51_tpoint.test.sql b/test/point/queries/51_tpoint.test.sql similarity index 100% rename from point/test/queries/51_tpoint.test.sql rename to test/point/queries/51_tpoint.test.sql diff --git a/point/test/queries/51_tpoint_tbl.test.sql b/test/point/queries/51_tpoint_tbl.test.sql similarity index 100% rename from point/test/queries/51_tpoint_tbl.test.sql rename to test/point/queries/51_tpoint_tbl.test.sql diff --git a/point/test/queries/52_tpoint_in.test.sql b/test/point/queries/52_tpoint_in.test.sql similarity index 100% rename from point/test/queries/52_tpoint_in.test.sql rename to test/point/queries/52_tpoint_in.test.sql diff --git a/point/test/queries/53_tpoint_out.test.sql b/test/point/queries/53_tpoint_out.test.sql similarity index 100% rename from point/test/queries/53_tpoint_out.test.sql rename to test/point/queries/53_tpoint_out.test.sql diff --git a/point/test/queries/53_tpoint_out_tbl.test.sql b/test/point/queries/53_tpoint_out_tbl.test.sql similarity index 100% rename from point/test/queries/53_tpoint_out_tbl.test.sql rename to test/point/queries/53_tpoint_out_tbl.test.sql diff --git a/point/test/queries/54_tpoint_compops.test.sql b/test/point/queries/54_tpoint_compops.test.sql similarity index 100% rename from point/test/queries/54_tpoint_compops.test.sql rename to test/point/queries/54_tpoint_compops.test.sql diff --git a/point/test/queries/54_tpoint_compops_tbl.test.sql b/test/point/queries/54_tpoint_compops_tbl.test.sql similarity index 100% rename from point/test/queries/54_tpoint_compops_tbl.test.sql rename to test/point/queries/54_tpoint_compops_tbl.test.sql diff --git a/point/test/queries/55_geography_funcs.test.sql b/test/point/queries/55_geography_funcs.test.sql similarity index 100% rename from point/test/queries/55_geography_funcs.test.sql rename to test/point/queries/55_geography_funcs.test.sql diff --git a/point/test/queries/56_tpoint_spatialfuncs.test.sql b/test/point/queries/56_tpoint_spatialfuncs.test.sql similarity index 100% rename from point/test/queries/56_tpoint_spatialfuncs.test.sql rename to test/point/queries/56_tpoint_spatialfuncs.test.sql diff --git a/point/test/queries/56_tpoint_spatialfuncs_tbl.test.sql b/test/point/queries/56_tpoint_spatialfuncs_tbl.test.sql similarity index 100% rename from point/test/queries/56_tpoint_spatialfuncs_tbl.test.sql rename to test/point/queries/56_tpoint_spatialfuncs_tbl.test.sql diff --git a/point/test/queries/57_tpoint_tile.test.sql b/test/point/queries/57_tpoint_tile.test.sql similarity index 100% rename from point/test/queries/57_tpoint_tile.test.sql rename to test/point/queries/57_tpoint_tile.test.sql diff --git a/point/test/queries/57_tpoint_tile_tbl.test.sql b/test/point/queries/57_tpoint_tile_tbl.test.sql similarity index 100% rename from point/test/queries/57_tpoint_tile_tbl.test.sql rename to test/point/queries/57_tpoint_tile_tbl.test.sql diff --git a/point/test/queries/58_tpoint_boxops.test.sql b/test/point/queries/58_tpoint_boxops.test.sql similarity index 100% rename from point/test/queries/58_tpoint_boxops.test.sql rename to test/point/queries/58_tpoint_boxops.test.sql diff --git a/point/test/queries/58_tpoint_boxops3d_tbl.test.sql b/test/point/queries/58_tpoint_boxops3d_tbl.test.sql similarity index 100% rename from point/test/queries/58_tpoint_boxops3d_tbl.test.sql rename to test/point/queries/58_tpoint_boxops3d_tbl.test.sql diff --git a/point/test/queries/58_tpoint_boxops_tbl.test.sql b/test/point/queries/58_tpoint_boxops_tbl.test.sql similarity index 100% rename from point/test/queries/58_tpoint_boxops_tbl.test.sql rename to test/point/queries/58_tpoint_boxops_tbl.test.sql diff --git a/point/test/queries/59_tpoint_boxops3d_spgist_pg11.test.sql b/test/point/queries/59_tpoint_boxops3d_spgist_pg11.test.sql similarity index 100% rename from point/test/queries/59_tpoint_boxops3d_spgist_pg11.test.sql rename to test/point/queries/59_tpoint_boxops3d_spgist_pg11.test.sql diff --git a/point/test/queries/59_tpoint_boxops_spgist_pg11.test.sql b/test/point/queries/59_tpoint_boxops_spgist_pg11.test.sql similarity index 100% rename from point/test/queries/59_tpoint_boxops_spgist_pg11.test.sql rename to test/point/queries/59_tpoint_boxops_spgist_pg11.test.sql diff --git a/point/test/queries/60_tpoint_posops.test.sql b/test/point/queries/60_tpoint_posops.test.sql similarity index 100% rename from point/test/queries/60_tpoint_posops.test.sql rename to test/point/queries/60_tpoint_posops.test.sql diff --git a/point/test/queries/60_tpoint_posops3d_tbl.test.sql b/test/point/queries/60_tpoint_posops3d_tbl.test.sql similarity index 100% rename from point/test/queries/60_tpoint_posops3d_tbl.test.sql rename to test/point/queries/60_tpoint_posops3d_tbl.test.sql diff --git a/point/test/queries/60_tpoint_posops_tbl.test.sql b/test/point/queries/60_tpoint_posops_tbl.test.sql similarity index 100% rename from point/test/queries/60_tpoint_posops_tbl.test.sql rename to test/point/queries/60_tpoint_posops_tbl.test.sql diff --git a/point/test/queries/61_tpoint_posops3d_spgist_pg11.test.sql b/test/point/queries/61_tpoint_posops3d_spgist_pg11.test.sql similarity index 100% rename from point/test/queries/61_tpoint_posops3d_spgist_pg11.test.sql rename to test/point/queries/61_tpoint_posops3d_spgist_pg11.test.sql diff --git a/point/test/queries/61_tpoint_posops_spgist_pg11.test.sql b/test/point/queries/61_tpoint_posops_spgist_pg11.test.sql similarity index 100% rename from point/test/queries/61_tpoint_posops_spgist_pg11.test.sql rename to test/point/queries/61_tpoint_posops_spgist_pg11.test.sql diff --git a/point/test/queries/62_tpoint_distance.test.sql b/test/point/queries/62_tpoint_distance.test.sql similarity index 100% rename from point/test/queries/62_tpoint_distance.test.sql rename to test/point/queries/62_tpoint_distance.test.sql diff --git a/point/test/queries/62_tpoint_distance_tbl.test.sql b/test/point/queries/62_tpoint_distance_tbl.test.sql similarity index 100% rename from point/test/queries/62_tpoint_distance_tbl.test.sql rename to test/point/queries/62_tpoint_distance_tbl.test.sql diff --git a/point/test/queries/64_tpoint_aggfuncs.test.sql b/test/point/queries/64_tpoint_aggfuncs.test.sql similarity index 100% rename from point/test/queries/64_tpoint_aggfuncs.test.sql rename to test/point/queries/64_tpoint_aggfuncs.test.sql diff --git a/point/test/queries/64_tpoint_aggfuncs_tbl.test.sql b/test/point/queries/64_tpoint_aggfuncs_tbl.test.sql similarity index 100% rename from point/test/queries/64_tpoint_aggfuncs_tbl.test.sql rename to test/point/queries/64_tpoint_aggfuncs_tbl.test.sql diff --git a/point/test/queries/66_tpoint_spatialrels.test.sql b/test/point/queries/66_tpoint_spatialrels.test.sql similarity index 100% rename from point/test/queries/66_tpoint_spatialrels.test.sql rename to test/point/queries/66_tpoint_spatialrels.test.sql diff --git a/point/test/queries/66_tpoint_spatialrels_tbl.test.sql b/test/point/queries/66_tpoint_spatialrels_tbl.test.sql similarity index 100% rename from point/test/queries/66_tpoint_spatialrels_tbl.test.sql rename to test/point/queries/66_tpoint_spatialrels_tbl.test.sql diff --git a/point/test/queries/68_tpoint_tempspatialrels.test.sql b/test/point/queries/68_tpoint_tempspatialrels.test.sql similarity index 100% rename from point/test/queries/68_tpoint_tempspatialrels.test.sql rename to test/point/queries/68_tpoint_tempspatialrels.test.sql diff --git a/point/test/queries/68_tpoint_tempspatialrels_tbl.test.sql b/test/point/queries/68_tpoint_tempspatialrels_tbl.test.sql similarity index 100% rename from point/test/queries/68_tpoint_tempspatialrels_tbl.test.sql rename to test/point/queries/68_tpoint_tempspatialrels_tbl.test.sql diff --git a/point/test/queries/70_tpoint_indexes_tbl.test.sql b/test/point/queries/70_tpoint_indexes_tbl.test.sql similarity index 100% rename from point/test/queries/70_tpoint_indexes_tbl.test.sql rename to test/point/queries/70_tpoint_indexes_tbl.test.sql diff --git a/point/test/queries/72_tpoint_indexes_spgist_pg11.test.sql b/test/point/queries/72_tpoint_indexes_spgist_pg11.test.sql similarity index 100% rename from point/test/queries/72_tpoint_indexes_spgist_pg11.test.sql rename to test/point/queries/72_tpoint_indexes_spgist_pg11.test.sql diff --git a/point/test/queries/73_tpoint_indexes_spgist_pg12.test.sql b/test/point/queries/73_tpoint_indexes_spgist_pg12.test.sql similarity index 100% rename from point/test/queries/73_tpoint_indexes_spgist_pg12.test.sql rename to test/point/queries/73_tpoint_indexes_spgist_pg12.test.sql diff --git a/point/test/queries/76_tpoint_analytics.test.sql b/test/point/queries/76_tpoint_analytics.test.sql similarity index 100% rename from point/test/queries/76_tpoint_analytics.test.sql rename to test/point/queries/76_tpoint_analytics.test.sql diff --git a/point/test/queries/76_tpoint_analytics_tbl.test.sql b/test/point/queries/76_tpoint_analytics_tbl.test.sql similarity index 100% rename from point/test/queries/76_tpoint_analytics_tbl.test.sql rename to test/point/queries/76_tpoint_analytics_tbl.test.sql diff --git a/test/scripts/CMakeLists.txt b/test/scripts/CMakeLists.txt new file mode 100644 index 0000000000..d628b323cd --- /dev/null +++ b/test/scripts/CMakeLists.txt @@ -0,0 +1,45 @@ +set(CTEST_PARALLEL_LEVEL 1) + +#TODO find xycat (or suitable decompressor) +set(UNCOMPRESS xzcat) + +configure_file(test.sh test.sh @ONLY) + + +add_test( + NAME build + COMMAND "${CMAKE_COMMAND}" --build ${CMAKE_BINARY_DIR} + ) + +add_test( + NAME setup + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMAND test.sh setup + ) + +add_test( + NAME create_extension + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMAND test.sh create_ext + ) + +add_test( + NAME teardown + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMAND test.sh teardown + ) + +set_tests_properties(setup PROPERTIES + DEPENDS build + FIXTURES_SETUP DBSETUP + RESOURCE_LOCK DBLOCK) + +set_tests_properties(create_extension PROPERTIES + DEPENDS setup + FIXTURES_SETUP DBEXT + RESOURCE_LOCK DBLOCK + FIXTURES_REQUIRED DBSETUP) + +set_tests_properties(teardown PROPERTIES + FIXTURES_CLEANUP DB;DBEXT;DBSETUP + RESOURCE_LOCK DBLOCK) diff --git a/test/scripts/test.cmake b/test/scripts/test.cmake deleted file mode 100644 index e0594a0c17..0000000000 --- a/test/scripts/test.cmake +++ /dev/null @@ -1,64 +0,0 @@ -set(CTEST_PARALLEL_LEVEL 1) - -add_test( - NAME build - COMMAND "${CMAKE_COMMAND}" --build ${CMAKE_BINARY_DIR} -) - -add_test( - NAME setup - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh setup ${CMAKE_BINARY_DIR} -) -add_test( - NAME create_extension - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh create_ext ${CMAKE_BINARY_DIR} -) -add_test( - NAME load_tables - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh run_passfail ${CMAKE_BINARY_DIR} load_tables "scripts/load.sql.xz" -) -add_test( - NAME teardown - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh teardown ${CMAKE_BINARY_DIR} -) - -set_tests_properties(setup PROPERTIES FIXTURES_SETUP DBSETUP) -set_tests_properties(setup PROPERTIES RESOURCE_LOCK DBLOCK) -set_tests_properties(create_extension PROPERTIES DEPENDS setup) -set_tests_properties(create_extension PROPERTIES FIXTURES_SETUP DBEXT) -set_tests_properties(create_extension PROPERTIES RESOURCE_LOCK DBLOCK) -set_tests_properties(create_extension PROPERTIES FIXTURES_REQUIRED DBSETUP) -set_tests_properties(load_tables PROPERTIES DEPENDS create_extension) -set_tests_properties(load_tables PROPERTIES FIXTURES_SETUP DB) -set_tests_properties(load_tables PROPERTIES RESOURCE_LOCK DBLOCK) -set_tests_properties(load_tables PROPERTIES FIXTURES_REQUIRED DBEXT) -set_tests_properties(teardown PROPERTIES FIXTURES_CLEANUP DB;DBEXT;DBSETUP) -set_tests_properties(teardown PROPERTIES RESOURCE_LOCK DBLOCK) - -file(GLOB testfiles "test/queries/*.sql") -list(SORT testfiles) - -foreach(file ${testfiles}) - get_filename_component(TESTNAME ${file} NAME_WE) - set(DOTEST TRUE) - if(${TESTNAME} MATCHES "_pg([0-9]+)") - if(${PG_MAJOR_VERSION} LESS ${CMAKE_MATCH_1}) - message("Disabling test ${TESTNAME}") - set(DOTEST FALSE) - endif() - endif() - if(DOTEST) - add_test( - NAME ${TESTNAME} - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/test - COMMAND ${PROJECT_SOURCE_DIR}/test/scripts/test.sh run_compare ${CMAKE_BINARY_DIR} ${TESTNAME} ${file} - ) - set_tests_properties(${TESTNAME} PROPERTIES FIXTURES_REQUIRED DB) - set_tests_properties(${TESTNAME} PROPERTIES RESOURCE_LOCK DBLOCK) - endif() -endforeach() - diff --git a/test/scripts/test.sh b/test/scripts/test.sh index a7275c11f1..1cc9c8aa7a 100755 --- a/test/scripts/test.sh +++ b/test/scripts/test.sh @@ -1,17 +1,34 @@ #!/bin/bash -#set -e -set -o pipefail +set -e +#set -o pipefail CMD=$1 -BUILDDIR=$2 +BUILDDIR="@CMAKE_BINARY_DIR@" + WORKDIR=$BUILDDIR/tmptest -EXTFILE=$BUILDDIR/*--*.sql -SOFILE=$(echo "$BUILDDIR"/lib*.so) + +#TODO clean +#EXTFILE="$BUILDDIR/@SQLOUT@" +#SOFILE=$(echo "$BUILDDIR"/lib*.so) + + +BIN_DIR=$(@PGCONFIG@ --bindir) + + PSQL="psql -h $WORKDIR/lock -e --set ON_ERROR_STOP=0 postgres" FAILPSQL="psql -h $WORKDIR/lock -e --set ON_ERROR_STOP=1 postgres" DBDIR=$WORKDIR/db -PGCTL="pg_ctl -w -D $DBDIR -l $WORKDIR/log/postgres.log -o -k -o $WORKDIR/lock -o -h -o ''" # -o -c -o enable_seqscan=off -o -c -o enable_bitmapscan=off -o -c -o enable_indexscan=on -o -c -o enable_indexonlyscan=on" + +#define an alias to run pg_ctl +run_ctl () { + "${BIN_DIR}/pg_ctl" -w -D "$DBDIR" -l "$WORKDIR/log/postgres.log" -o -k -o "$WORKDIR/lock" -o -h -o "$@" + return $? +} + + +PGCTL="${BIN_DIR}/pg_ctl -w -D $DBDIR -l $WORKDIR/log/postgres.log -o -k -o $WORKDIR/lock -o -h -o ''" +# -o -c -o enable_seqscan=off -o -c -o enable_bitmapscan=off -o -c -o enable_indexscan=on -o -c -o enable_indexonlyscan=on" #FIXME: this is cheating PGSODIR=$(pg_config --pkglibdir) @@ -19,11 +36,12 @@ POSTGIS=$(find "$PGSODIR" -name 'postgis-2.5.so' | head -1) case $CMD in setup) + # Does not need a parameter rm -rf "$WORKDIR" mkdir -p "$WORKDIR"/db "$WORKDIR"/lock "$WORKDIR"/out "$WORKDIR"/log - initdb -D "$DBDIR" 2>&1 | tee "$WORKDIR"/log/initdb.log + "${BIN_DIR}"/initdb -D "$DBDIR" 2>&1 | tee "$WORKDIR"/log/initdb.log - if [ ! -z "$POSTGIS" ]; then + if [ -n "$POSTGIS" ]; then POSTGIS=$(basename "$POSTGIS" .so) echo "shared_preload_libraries = '$POSTGIS'" >> "$WORKDIR"/db/postgresql.conf fi @@ -35,14 +53,11 @@ setup) echo "min_parallel_table_scan_size = 0" >> "$WORKDIR"/db/postgresql.conf echo "min_parallel_index_scan_size = 0" >> "$WORKDIR"/db/postgresql.conf - $PGCTL start 2>&1 | tee "$WORKDIR"/log/pg_start.log - if [ "$?" != "0" ]; then + if ! run_ctl start 2>&1 | tee "$WORKDIR/log/pg_start.log"; then sleep 2 - $PGCTL status - - if [ "$?" != "0" ]; then + if ! run_ctl status; then echo "Failed to start PostgreSQL" >&2 - $PGCTL stop + run_ctl stop exit 1 fi fi @@ -51,24 +66,30 @@ setup) ;; create_ext) - $PGCTL status || $PGCTL start + # Does not need a parameter + echo "starting create extension" >> "$WORKDIR"/log/create_ext.log + echo "status $(run_ctl status)" >> "$WORKDIR"/log/create_ext.log + $PGCTL status || $PGCTL start + echo "create extension 1" >> "$WORKDIR"/log/create_ext.log - if [ ! -z "$POSTGIS" ]; then + if [ -n "$POSTGIS" ]; then echo "CREATE EXTENSION postgis;" | $PSQL 2>&1 1>/dev/null | tee "$WORKDIR"/log/create_ext.log fi - sed -e "s|MODULE_PATHNAME|$SOFILE|g" -e "s|@extschema@|public|g" < $EXTFILE | $FAILPSQL 2>&1 1>/dev/null | tee -a "$WORKDIR"/log/create_ext.log + echo "CREATE EXTENSION mobilitydb;" | $PSQL 2>&1 1>/dev/null | tee "$WORKDIR"/log/create_ext.log + #sed -e "s|MODULE_PATHNAME|$SOFILE|g" -e "s|@extschema@|public|g" < $EXTFILE | $FAILPSQL 2>&1 1>/dev/null | tee -a "$WORKDIR"/log/create_ext.log exit 0 ;; teardown) - $PGCTL stop || true + # Does not need a parameter + run_ctl stop || true exit 0 ;; run_compare) - TESTNAME=$3 - TESTFILE=$4 + TESTNAME=$2 + TESTFILE=$3 $PGCTL status || $PGCTL start @@ -77,20 +98,20 @@ run_compare) done if [ "${TESTFILE: -3}" == ".xz" ]; then - xzcat "$TESTFILE" | $PSQL 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null - else - $PSQL < "$TESTFILE" 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null - fi + @UNCOMPRESS@ "$TESTFILE" | $PSQL 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null + else + $PSQL < "$TESTFILE" 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null + fi - if [ ! -z "$TEST_GENERATE" ]; then + if [ -n "$TEST_GENERATE" ]; then echo "TEST_GENERATE is on; assuming correct output" - cat "$WORKDIR"/out/"$TESTNAME".out > $(dirname "$TESTFILE")/../expected/$(basename "$TESTFILE" .sql).out + cat "$WORKDIR"/out/"$TESTNAME".out > "$(dirname "$TESTFILE")"/../expected/"$(basename "$TESTFILE" .sql)".out exit 0 else tmpactual=$(mktemp --suffix=actual) tmpexpected=$(mktemp --suffix=expected) sed -e's/^ERROR:.*/ERROR/' "$WORKDIR"/out/"$TESTNAME".out >> "$tmpactual" - sed -e's/^ERROR:.*/ERROR/' $(dirname "$TESTFILE")/../expected/$(basename "$TESTFILE" .sql).out >> "$tmpexpected" + sed -e's/^ERROR:.*/ERROR/' "$(dirname "$TESTFILE")"/../expected/"$(basename "$TESTFILE" .sql)".out >> "$tmpexpected" echo echo "Differences" echo "===========" @@ -101,8 +122,8 @@ run_compare) ;; run_passfail) - TESTNAME=$3 - TESTFILE=$4 + TESTNAME=$2 + TESTFILE=$3 $PGCTL status || $PGCTL start @@ -111,7 +132,7 @@ run_passfail) done if [ "${TESTFILE: -3}" == ".xz" ]; then - xzcat "$TESTFILE" | $FAILPSQL 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null + @UNCOMPRESS@ "$TESTFILE" | $FAILPSQL 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null else $FAILPSQL < "$TESTFILE" 2>&1 | tee "$WORKDIR"/out/"$TESTNAME".out > /dev/null fi