[svn-r14996] Purpose:

Updated the call using the new interface for the get_name_by_idx_f routine
This commit is contained in:
Scot Breitenfeld 2008-05-14 13:58:44 -05:00
parent a30c706f79
commit 33483eafdc
2 changed files with 44 additions and 17 deletions

View File

@ -1020,10 +1020,8 @@ SUBROUTINE test_attr_info_by_idx(new_format, fcpl, fapl, total_error)
f_corder_valid, corder, cset, data_size, error, lapl_id=H5P_DEFAULT_F)
CALL VERIFY("h5aget_info_by_idx_f",error,minusone,total_error)
size = 0
CALL h5aget_name_by_idx_f(my_dataset, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
!EP 0_HSIZE_T, tmpname, size, error, lapl_id=H5P_DEFAULT_F)
hzero, tmpname, size, error, lapl_id=H5P_DEFAULT_F)
hzero, tmpname, error, size, lapl_id=H5P_DEFAULT_F)
CALL VERIFY("h5aget_name_by_idx_f",error,minusone,total_error)
@ -1210,17 +1208,50 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
! /* Verify the name for new link, in increasing creation order */
!!$ CALL HDmemset(tmpname, 0, (size_t))
! Try with the correct buffer size
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
n, tmpname, NAME_BUF_SIZE, error)
n, tmpname, error, NAME_BUF_SIZE)
CALL check("h5aget_name_by_idx_f",error,total_error)
CALL VERIFY("h5aget_name_by_idx_f", NAME_BUF_SIZE, 7, error)
IF(TRIM(attrname).NE.TRIM(tmpname))THEN
IF(attrname.NE.tmpname)THEN
error = -1
ENDIF
CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
! Try with a larger buffer size then needed
NAME_BUF_SIZE = 17
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
n, tmpname, error, NAME_BUF_SIZE )
CALL check("h5aget_name_by_idx_f",error,total_error)
CALL VERIFY("h5aget_name_by_idx_f", NAME_BUF_SIZE, 7, error)
IF(attrname(1:NAME_BUF_SIZE).NE.tmpname(1:NAME_BUF_SIZE))THEN
error = -1
ENDIF
CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
! Try with a smaller buffer size then needed
NAME_BUF_SIZE = 5
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
n, tmpname, error, NAME_BUF_SIZE)
CALL check("h5aget_name_by_idx_f",error,total_error)
CALL VERIFY("h5aget_name_by_idx_f", NAME_BUF_SIZE, 7, error)
IF(attrname(1:5).NE.tmpname(1:5))THEN
error = -1
ENDIF
CALL VERIFY("h5aget_name_by_idx_f",error,0,total_error)
! Try with a zero buffer size
NAME_BUF_SIZE = 0
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, &
n, tmpname, error, NAME_BUF_SIZE)
CALL check("h5aget_name_by_idx_f",error,total_error)
CALL VERIFY("h5aget_name_by_idx_f", NAME_BUF_SIZE, 7, error)
! /* Don't test "native" order if there is no creation order index, since
! * there's not a good way to easily predict the attribute's order in the name
! * index.
@ -1244,7 +1275,7 @@ SUBROUTINE attr_info_by_idx_check(obj_id, attrname, n, use_index, total_error )
! /* Verify the name for new link, in increasing native order */
! CALL HDmemset(tmpname, 0, (size_t))
CALL h5aget_name_by_idx_f(obj_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_NATIVE_F, &
n, tmpname, NAME_BUF_SIZE, error)
n, tmpname, error) ! check with no optional parameters
CALL check("h5aget_name_by_idx_f",error,total_error)
IF(TRIM(attrname).NE.TRIM(tmpname))THEN
WRITE(*,*) "ERROR: attribute name size wrong!"
@ -2111,7 +2142,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
size = 7 ! *CHECK* IF NOT THE SAME SIZE
CALL h5aget_name_by_idx_f(my_dataset, ".", idx_type, order,INT(0,hsize_t), &
tmpname, size, error, lapl_id=H5P_DEFAULT_F)
tmpname, error, lapl_id=H5P_DEFAULT_F, size=size)
CALL check('h5aget_name_by_idx_f',error,total_error)
IF(order .EQ. H5_ITER_INC_F)THEN
WRITE(chr2,'(I2.2)') u + 1
@ -2251,7 +2282,7 @@ SUBROUTINE test_attr_delete_by_idx(new_format, fcpl, fapl, total_error)
size = 7 ! *CHECK* if not the correct size
CALL h5aget_name_by_idx_f(my_dataset, ".", idx_type, order,INT(0,hsize_t), &
tmpname, size, error)
tmpname, error, size)
IF(order .EQ. H5_ITER_INC_F)THEN
WRITE(chr2,'(I2.2)') u + 1

View File

@ -2036,23 +2036,19 @@ SUBROUTINE link_info_by_idx_check(group_id, linkname, n, &
! The actual size of tmpname should be 7
size_tmp = INT(3,SIZE_T)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), size_tmp, tmpname_small, error)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), tmpname_small, error, size_tmp)
CALL check("link_info_by_idx_check.H5Lget_name_by_idx_f", error, total_error)
CALL verifyString("link_info_by_idx_check.H5Lget_name_by_idx_f", &
linkname(1:LEN(tmpname_small)), tmpname_small(1:LEN(tmpname_small)), total_error)
CALL VERIFY("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
! try it with the correct size
size_tmp = INT(LEN(tmpname),SIZE_T)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), size_tmp, tmpname, error)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), tmpname, error, size=size_tmp)
CALL check("link_info_by_idx_check.H5Lget_name_by_idx_f", error, total_error)
CALL verifyString("link_info_by_idx_check.H5Lget_name_by_idx_f", &
linkname(1:LEN(tmpname)), tmpname(1:LEN(tmpname)), total_error)
CALL VERIFY("link_info_by_idx_check.H5Lget_name_by_idx_f", INT(size_tmp), 7, total_error)
size_tmp = INT(LEN(tmpname_big),SIZE_T)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), size_tmp, tmpname_big, error)
CALL H5Lget_name_by_idx_f(group_id, ".", H5_INDEX_CRT_ORDER_F, H5_ITER_INC_F, INT(n,HSIZE_T), tmpname_big, error, size_tmp)
CALL check("link_info_by_idx_check.H5Lget_name_by_idx_f", error, total_error)
CALL verifyString("link_info_by_idx_check.H5Lget_name_by_idx_f", &
linkname(1:7), tmpname_big(1:7), total_error)