summaryrefslogtreecommitdiffstats
path: root/tools/h5dump
diff options
context:
space:
mode:
Diffstat (limited to 'tools/h5dump')
-rw-r--r--tools/h5dump/h5dumpgentest.c68
-rw-r--r--tools/h5dump/testh5dump.sh.in8
2 files changed, 58 insertions, 18 deletions
diff --git a/tools/h5dump/h5dumpgentest.c b/tools/h5dump/h5dumpgentest.c
index 70372da..45142e3 100644
--- a/tools/h5dump/h5dumpgentest.c
+++ b/tools/h5dump/h5dumpgentest.c
@@ -5563,33 +5563,73 @@ error:
* Contains:
* 1) an integer dataset
* 2) a float dataset
+ * 3) an array dataset
+ * 4) a large double dataset
*
*-------------------------------------------------------------------------
*/
static void gent_binary()
{
- hid_t fid, sid, idid, fdid;
+ hid_t fid, sid, did, tid;
hsize_t dims[1] = {6};
+ hsize_t dimarray[1] = {2};
+ hsize_t dimsl[1] = {100000};
int ibuf[6] = {1,2,3,4,5,6};
float fbuf[6] = {1,2,3,4,5,6};
+ int abuf[2][6] = {{1,2,3,4,5,6},{7,8,9,10,11,12}}; /* array */
+ double *dbuf=NULL;
fid = H5Fcreate(FILE55, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
- /* create dataspace */
+
+/*-------------------------------------------------------------------------
+ * integer
+ *-------------------------------------------------------------------------
+ */
sid = H5Screate_simple(1, dims, NULL);
-
- /* create datasets */
- idid = H5Dcreate(fid, "integer", H5T_NATIVE_INT, sid, H5P_DEFAULT);
- fdid = H5Dcreate(fid, "float", H5T_NATIVE_FLOAT, sid, H5P_DEFAULT);
-
- /* write */
- H5Dwrite(idid, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, ibuf);
- H5Dwrite(fdid, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, fbuf);
-
- /* close */
+ did = H5Dcreate(fid, "integer", H5T_NATIVE_INT, sid, H5P_DEFAULT);
+ H5Dwrite(did, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, ibuf);
+ H5Dclose(did);
+ H5Sclose(sid);
+
+/*-------------------------------------------------------------------------
+ * float
+ *-------------------------------------------------------------------------
+ */
+ sid = H5Screate_simple(1, dims, NULL);
+ did = H5Dcreate(fid, "float", H5T_NATIVE_FLOAT, sid, H5P_DEFAULT);
+ H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, fbuf);
+ H5Dclose(did);
+ H5Sclose(sid);
+
+/*-------------------------------------------------------------------------
+ * array
+ *-------------------------------------------------------------------------
+ */
+ tid = H5Tarray_create(H5T_NATIVE_INT,1,dims,NULL);
+ sid = H5Screate_simple(1, dimarray, NULL);
+ did = H5Dcreate(fid, "array", tid, sid, H5P_DEFAULT);
+ H5Dwrite(did, tid, H5S_ALL, H5S_ALL, H5P_DEFAULT, abuf);
+ H5Dclose(did);
+ H5Tclose(tid);
H5Sclose(sid);
- H5Dclose(idid);
- H5Dclose(fdid);
+
+/*-------------------------------------------------------------------------
+ * double
+ *-------------------------------------------------------------------------
+ */
+ sid = H5Screate_simple(1, dimsl, NULL);
+ did = H5Dcreate(fid, "double", H5T_NATIVE_DOUBLE, sid, H5P_DEFAULT);
+ dbuf=calloc(100000,sizeof(double));
+ if (dbuf!=NULL)
+ {
+ H5Dwrite(did, H5T_NATIVE_DOUBLE, H5S_ALL, H5S_ALL, H5P_DEFAULT, dbuf);
+ free(dbuf);
+ }
+ H5Dclose(did);
+ H5Sclose(sid);
+
+ /* close */
H5Fclose(fid);
}
diff --git a/tools/h5dump/testh5dump.sh.in b/tools/h5dump/testh5dump.sh.in
index 660b938..8368385 100644
--- a/tools/h5dump/testh5dump.sh.in
+++ b/tools/h5dump/testh5dump.sh.in
@@ -323,10 +323,10 @@ TOOLTEST tlonglinks.ddl tlonglinks.h5
TOOLTEST tvms.ddl tvms.h5
# test for binary output
-TOOLTEST tbin1.ddl -d integer -o out1.bin -b MEMORY tbinary.h5
-TOOLTEST tbin2.ddl -d float -o out2.bin -b FILE tbinary.h5
-TOOLTEST tbin3.ddl -d integer -o out3.bin -b LE tbinary.h5
-TOOLTEST tbin4.ddl -d float -o out4.bin -b BE tbinary.h5
+TOOLTEST tbin1.ddl -d integer -o out1.bin -b LE tbinary.h5
+TOOLTEST tbin2.ddl -d float -o out2.bin -b BE tbinary.h5
+TOOLTEST tbin3.ddl -d array -o out3.bin -b MEMORY tbinary.h5
+TOOLTEST tbin4.ddl -d double -o out4.bin -b FILE tbinary.h5
# Clean up binary output files
if test -z "$HDF5_NOCLEANUP"; then
rm -f $srcdir/../testfiles/out[1-4].bin