From 46a62130faf4ac168a4b33e3d5551446c73fa4e6 Mon Sep 17 00:00:00 2001 From: "M. Scot Breitenfeld" Date: Thu, 13 Jun 2019 09:23:12 -0500 Subject: fix for cycle dependency --- fortran/test/CMakeTests.cmake | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake index 306a3f8..baefb8f 100644 --- a/fortran/test/CMakeTests.cmake +++ b/fortran/test/CMakeTests.cmake @@ -215,6 +215,7 @@ if (BUILD_SHARED_LIBS) endif () # set_tests_properties (FORTRAN_testhdf5_fortran_1_8-shared PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s") set_tests_properties (FORTRAN_testhdf5_fortran_1_8-shared PROPERTIES DEPENDS FORTRAN_testhdf5_fortran_1_8) + #-- Adding test for fortranlib_test_F03 if (HDF5_ENABLE_USING_MEMCHECKER) @@ -236,6 +237,26 @@ if (BUILD_SHARED_LIBS) # set_tests_properties (FORTRAN_fortranlib_test_F03-shared PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s") set_tests_properties (FORTRAN_fortranlib_test_F03-shared PROPERTIES DEPENDS FORTRAN_fortranlib_test_F03) + #-- Adding test for vol_connector + if (HDF5_ENABLE_USING_MEMCHECKER) + add_test (NAME FORTRAN_vol_connector-shared COMMAND $) + else () + add_test (NAME FORTRAN_vol_connector-shared COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS:STRING=" + -D "TEST_EXPECT=0" + -D "TEST_SKIP_COMPARE=TRUE" + -D "TEST_REGEX= 0 error.s." + -D "TEST_MATCH= 0 error(s)" + -D "TEST_OUTPUT=vol_connector.txt" + #-D "TEST_REFERENCE=vol_connector.out" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/fshared" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) + endif () +# set_tests_properties (FORTRAN_vol_connector-shared PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s") + set_tests_properties (FORTRAN_vol_connector-shared PROPERTIES DEPENDS FORTRAN_vol_connector) + #-- Adding test for fflush1 add_test (NAME FORTRAN_fflush1-shared COMMAND $) set_tests_properties (FORTRAN_fflush1-shared PROPERTIES DEPENDS FORTRAN_fflush2) -- cgit v0.12 From c348d7d6062f34554f8d432ea9d80bf2c936c734 Mon Sep 17 00:00:00 2001 From: "M. Scot Breitenfeld" Date: Thu, 13 Jun 2019 09:56:50 -0500 Subject: removed unregistering native vol --- fortran/test/vol_connector.F90 | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/fortran/test/vol_connector.F90 b/fortran/test/vol_connector.F90 index 62e3f8d..94f572b 100644 --- a/fortran/test/vol_connector.F90 +++ b/fortran/test/vol_connector.F90 @@ -93,10 +93,6 @@ CONTAINS CALL H5VLclose_f(vol_id_out, error) CALL check("H5VLclose_f",error, total_error) - ! Unregister the connector - CALL H5VLunregister_connector_f(vol_id, error) - CALL check("H5VLunregister_connector_f", error, total_error) - END SUBROUTINE test_registration_by_name !------------------------------------------------------------------------- @@ -132,10 +128,6 @@ CONTAINS CALL check("H5VLis_connector_registered_f",error,total_error) CALL VERIFY("H5VLis_connector_registered_f", is_registered, .TRUE., total_error) - ! Unregister the connector - CALL H5VLunregister_connector_f(vol_id, error) - CALL check("H5VLunregister_connector_f", error, total_error) - END SUBROUTINE test_registration_by_value @@ -216,10 +208,6 @@ CONTAINS CALL H5VLclose_f(vol_id, error) CALL check("H5VLclose_f",error, total_error) - ! Unregister the connector - CALL H5VLunregister_connector_f(vol_id, error) - CALL check("H5VLunregister_connector_f", error, total_error) - CALL H5Fclose_f(file_id, error) CALL check("H5Fclose_f",error,total_error) -- cgit v0.12 From e5d1da02244603f19e165c573326835f7a634b47 Mon Sep 17 00:00:00 2001 From: "M. Scot Breitenfeld" Date: Thu, 13 Jun 2019 10:31:14 -0500 Subject: fixed invalid pointer --- fortran/src/H5VLff.F90 | 3 ++- fortran/test/vol_connector.F90 | 27 ++++++++++++++++++++------- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/fortran/src/H5VLff.F90 b/fortran/src/H5VLff.F90 index 0c5e8fd..9abc157 100644 --- a/fortran/src/H5VLff.F90 +++ b/fortran/src/H5VLff.F90 @@ -232,7 +232,8 @@ CONTAINS hdferr = 0 IF(PRESENT(name_len))THEN - name_len = INT(H5VLget_connector_name(obj_id, c_name, 0_SIZE_T), SIZE_T) + c_name(1:1)(1:1) = C_NULL_CHAR + name_len = INT(H5VLget_connector_name(obj_id, c_name, 1_SIZE_T), SIZE_T) IF(name_len.LT.0) hdferr = H5I_INVALID_HID_F ELSE l = INT(LEN(name)+1,SIZE_T) diff --git a/fortran/test/vol_connector.F90 b/fortran/test/vol_connector.F90 index 94f572b..623767b 100644 --- a/fortran/test/vol_connector.F90 +++ b/fortran/test/vol_connector.F90 @@ -55,9 +55,10 @@ CONTAINS LOGICAL :: is_registered = .FALSE. INTEGER(hid_t) :: vol_id = 0, vol_id_out = 1 CHARACTER(LEN=64) :: name + CHARACTER(LEN=1) :: name_null + CHARACTER(LEN=6) :: name_exact INTEGER(SIZE_T) :: name_len INTEGER(hid_t) :: file_id - INTEGER :: cmp = -1 ! The null VOL connector should not be registered at the start of the test CALL H5VLis_connector_registered_f( "FAKE_VOL_CONNECTOR_NAME", is_registered, error) @@ -87,6 +88,22 @@ CONTAINS CALL check("H5VLget_connector_name_f",error,total_error) CALL VERIFY("H5VLget_connector_name_f", name, NATIVE_VOL_CONNECTOR_NAME, total_error) + CALL H5VLget_connector_name_f(file_id, name_null, error, name_len) + CALL check("H5VLget_connector_name_f",error,total_error) + CALL VERIFY("H5VLget_connector_name_f", INT(name_len), LEN_TRIM(NATIVE_VOL_CONNECTOR_NAME), total_error) + + CALL H5VLget_connector_name_f(file_id, name_null, error) + CALL check("H5VLget_connector_name_f",error,total_error) + CALL VERIFY("H5VLget_connector_name_f", name_null, NATIVE_VOL_CONNECTOR_NAME(1:1), total_error) + + CALL H5VLget_connector_name_f(file_id, name_exact, error, name_len) + CALL check("H5VLget_connector_name_f",error,total_error) + CALL VERIFY("H5VLget_connector_name_f", INT(name_len), LEN_TRIM(NATIVE_VOL_CONNECTOR_NAME), total_error) + + CALL H5VLget_connector_name_f(file_id, name_exact, error) + CALL check("H5VLget_connector_name_f",error,total_error) + CALL VERIFY("H5VLget_connector_name_f", name_exact, NATIVE_VOL_CONNECTOR_NAME, total_error) + CALL H5Fclose_f(file_id, error) CALL check("H5Fclose_f",error,total_error) @@ -149,19 +166,15 @@ CONTAINS LOGICAL :: is_registered = .FALSE. INTEGER(hid_t) :: vol_id = 0, vol_id_out = 1 - CHARACTER(LEN=64) :: name - INTEGER(SIZE_T) :: name_len INTEGER(hid_t) :: file_id - INTEGER :: cmp = -1 INTEGER(hid_t) :: fapl_id TYPE(C_PTR) :: f_ptr - INTEGER(hid_t), TARGET :: under_fapl CALL H5VLis_connector_registered_f( "FAKE_VOL_CONNECTOR_NAME", is_registered, error) + CALL check("H5VLis_connector_registered_f",error,total_error) CALL VERIFY("H5VLis_connector_registered_f", is_registered, .FALSE., total_error) - ! The null VOL connector should not be registered at the start of the test CALL H5VLis_connector_registered_f( "FAKE_VOL_CONNECTOR_NAME", is_registered, error) CALL check("H5VLis_connector_registered_f",error,total_error) @@ -169,7 +182,7 @@ CONTAINS CALL H5VLregister_connector_by_name_f(NATIVE_VOL_CONNECTOR_NAME, vol_id, error) CALL check("H5VLregister_connector_by_name_f",error,total_error) - + ! The connector should be registered now CALL H5VLis_connector_registered_f(NATIVE_VOL_CONNECTOR_NAME, is_registered, error) CALL check("H5VLis_connector_registered_f",error,total_error) -- cgit v0.12 From 92bebb782e7bdfb604079430c005dd8513272eb6 Mon Sep 17 00:00:00 2001 From: "M. Scot Breitenfeld" Date: Thu, 13 Jun 2019 10:41:31 -0500 Subject: fixed dependencies --- fortran/test/CMakeLists.txt | 11 +++++++++-- fortran/test/CMakeTests.cmake | 3 --- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt index 719a9f3..921e29a 100644 --- a/fortran/test/CMakeLists.txt +++ b/fortran/test/CMakeLists.txt @@ -570,7 +570,11 @@ if (BUILD_SHARED_LIBS) endif () #-- Adding test for vol_connector -add_executable (vol_connector vol_connector.F90) +add_executable (vol_connector + vol_connector.F90 + tH5L_F03.F90 + tHDF5_F03.F90) + target_include_directories (vol_connector PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/static @@ -600,7 +604,10 @@ set_target_properties (vol_connector PROPERTIES add_dependencies (vol_connector ${HDF5_F90_TEST_LIB_TARGET}) if (BUILD_SHARED_LIBS) - add_executable (vol_connector-shared vol_connector.F90) + add_executable (vol_connector-shared + vol_connector.F90 + tH5L_F03.F90 + tHDF5_F03.F90) target_include_directories (vol_connector-shared PRIVATE ${CMAKE_Fortran_MODULE_DIRECTORY}/shared diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake index baefb8f..3b313a7 100644 --- a/fortran/test/CMakeTests.cmake +++ b/fortran/test/CMakeTests.cmake @@ -265,7 +265,4 @@ if (BUILD_SHARED_LIBS) add_test (NAME FORTRAN_fflush2-shared COMMAND $) set_tests_properties (FORTRAN_fflush2-shared PROPERTIES DEPENDS FORTRAN_fflush1-shared) - #-- Adding test for vol_connector - add_test (NAME FORTRAN_vol_connector-shared COMMAND $) - set_tests_properties (FORTRAN_vol_connector-shared PROPERTIES DEPENDS FORTRAN_vol_connector-shared) endif () -- cgit v0.12 From b08685f5036e21cbce0227797d9bc3e00a36c2ff Mon Sep 17 00:00:00 2001 From: "M. Scot Breitenfeld" Date: Thu, 13 Jun 2019 15:47:55 -0500 Subject: updated static vol_connector build --- fortran/test/CMakeTests.cmake | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake index baefb8f..45f14d1 100644 --- a/fortran/test/CMakeTests.cmake +++ b/fortran/test/CMakeTests.cmake @@ -131,8 +131,24 @@ add_test (NAME FORTRAN_fflush2 COMMAND $) set_tests_properties (FORTRAN_fflush2 PROPERTIES DEPENDS FORTRAN_fflush1) #-- Adding test for vol_connector -add_test (NAME FORTRAN_vol_connector COMMAND $) -set_tests_properties (FORTRAN_vol_connector PROPERTIES DEPENDS FORTRAN_testhdf5-clear-objects) +if (HDF5_ENABLE_USING_MEMCHECKER) + add_test (NAME FORTRAN_vol_connector COMMAND $) +else () + add_test (NAME FORTRAN_vol_connector COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS:STRING=" + -D "TEST_EXPECT=0" + -D "TEST_SKIP_COMPARE=TRUE" + -D "TEST_REGEX= 0 error.s." + -D "TEST_MATCH= 0 error(s)" + -D "TEST_OUTPUT=vol_connector.txt" + #-D "TEST_REFERENCE=vol_connector.out" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" + -P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake" + ) +endif () +# set_tests_properties (FORTRAN_vol_connector PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s") + set_tests_properties (FORTRAN_vol_connector PROPERTIES DEPENDS FORTRAN_fortranlib_test_F03) if (BUILD_SHARED_LIBS) add_test ( -- cgit v0.12 From d754a86c2412747be587633fb7e7180570b3f82a Mon Sep 17 00:00:00 2001 From: "M. Scot Breitenfeld" Date: Thu, 13 Jun 2019 16:23:55 -0500 Subject: updated static vol_connector build --- fortran/test/CMakeTests.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake index bba9ee6..a63a201 100644 --- a/fortran/test/CMakeTests.cmake +++ b/fortran/test/CMakeTests.cmake @@ -148,7 +148,7 @@ else () ) endif () # set_tests_properties (FORTRAN_vol_connector PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s") - set_tests_properties (FORTRAN_vol_connector PROPERTIES DEPENDS FORTRAN_fortranlib_test_F03) + set_tests_properties (FORTRAN_vol_connector PROPERTIES DEPENDS FORTRAN_testhdf5-clear-objects) if (BUILD_SHARED_LIBS) add_test ( -- cgit v0.12