summaryrefslogtreecommitdiffstats
path: root/fortran/test/tH5T.f90
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2012-07-25 19:56:18 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2012-07-25 19:56:18 (GMT)
commit434643dd4d14a841abdcc73ad7b3a0a8e06e4438 (patch)
tree24ba05d5c24bc4845bcb5c0051d9fcafbfc5afd6 /fortran/test/tH5T.f90
parentf0e0137b6110fb4f0c3ffe40a9bb5d43111874a7 (diff)
downloadhdf5-434643dd4d14a841abdcc73ad7b3a0a8e06e4438.zip
hdf5-434643dd4d14a841abdcc73ad7b3a0a8e06e4438.tar.gz
hdf5-434643dd4d14a841abdcc73ad7b3a0a8e06e4438.tar.bz2
[svn-r22600] Description:
Bring r22251:22599 from trunk to revise_chunks branch. Tested on: Mac OSX/64 10.7.4 (amazon) w/gcc 4.7.1, C++ & FORTRAN (Not h5committested yet, as this branch doesn't require it)
Diffstat (limited to 'fortran/test/tH5T.f90')
-rw-r--r--fortran/test/tH5T.f9045
1 files changed, 45 insertions, 0 deletions
diff --git a/fortran/test/tH5T.f90 b/fortran/test/tH5T.f90
index 6af1ba6..9605c45 100644
--- a/fortran/test/tH5T.f90
+++ b/fortran/test/tH5T.f90
@@ -108,6 +108,51 @@
INTEGER(HID_T) :: decoded_sid1
INTEGER(HID_T) :: decoded_tid1
+ INTEGER(HID_T) :: fixed_str1, fixed_str2
+ LOGICAL :: are_equal
+ INTEGER(SIZE_T), PARAMETER :: str_size = 10
+ INTEGER(SIZE_T) :: query_size
+
+ ! Test h5tcreate_f with H5T_STRING_F option:
+ ! Create fixed-length string in two ways and make sure they are the same
+
+ CALL h5tcopy_f(H5T_FORTRAN_S1, fixed_str1, error)
+ CALL check("h5tcopy_f", error, total_error)
+ CALL h5tset_size_f(fixed_str1, str_size, error)
+ CALL check("h5tset_size_f", error, total_error)
+ CALL h5tset_strpad_f(fixed_str1, H5T_STR_NULLTERM_F, error)
+ CALL check("h5tset_strpad_f", error, total_error)
+
+ CALL h5tcreate_f(H5T_STRING_F, str_size, fixed_str2, error)
+ CALL check("h5tcreate_f", error, total_error)
+ CALL h5tset_strpad_f(fixed_str2, H5T_STR_NULLTERM_F, error)
+ CALL check("h5tset_strpad_f", error, total_error)
+
+ CALL h5tequal_f(fixed_str1, fixed_str2, are_equal, error)
+ IF(.NOT.are_equal)THEN
+ CALL check("h5tcreate_f", -1, total_error)
+ ENDIF
+
+ CALL h5tget_size_f(fixed_str1, query_size, error)
+ CALL check("h5tget_size_f", error, total_error)
+
+ IF(query_size.NE.str_size)THEN
+ CALL check("h5tget_size_f", -1, total_error)
+ ENDIF
+
+ CALL h5tget_size_f(fixed_str2, query_size, error)
+ CALL check("h5tget_size_f", error, total_error)
+
+ IF(query_size.NE.str_size)THEN
+ CALL check("h5tget_size_f", -1, total_error)
+ ENDIF
+
+ CALL h5tclose_f(fixed_str1,error)
+ CALL check("h5tclose_f", error, total_error)
+
+ CALL h5tclose_f(fixed_str2,error)
+ CALL check("h5tclose_f", error, total_error)
+
data_dims(1) = dimsize
!
! Initialize data buffer.