summaryrefslogtreecommitdiffstats
path: root/test/enum.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/enum.c')
-rw-r--r--test/enum.c710
1 files changed, 406 insertions, 304 deletions
diff --git a/test/enum.c b/test/enum.c
index 1933ce1..eafce72 100644
--- a/test/enum.c
+++ b/test/enum.c
@@ -16,22 +16,12 @@
* Tuesday, December 22, 1998
*/
#include "h5test.h"
-#define CPTR(VAR,CONST) ((VAR)=(CONST),&(VAR))
-
-const char *FILENAME[] = {
- "enum1",
- NULL
-};
-
-typedef enum {
- E1_RED,
- E1_GREEN,
- E1_BLUE,
- E1_WHITE,
- E1_BLACK
-} c_e1;
-
-
+#define CPTR(VAR, CONST) ((VAR) = (CONST), &(VAR))
+
+const char *FILENAME[] = {"enum1", NULL};
+
+typedef enum { E1_RED, E1_GREEN, E1_BLUE, E1_WHITE, E1_BLACK } c_e1;
+
/*-------------------------------------------------------------------------
* Function: test_named
*
@@ -51,61 +41,90 @@ typedef enum {
static int
test_named(hid_t file)
{
- hid_t type = -1, cwg = -1;
- c_e1 val;
- signed char val8;
+ hid_t type = -1, cwg = -1;
+ c_e1 val;
+ signed char val8;
TESTING("named enumeration types");
- if((cwg = H5Gcreate2(file, "test_named", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
+ if ((cwg = H5Gcreate2(file, "test_named", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
/* A native integer */
- if((type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "RED", CPTR(val, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "GREEN", CPTR(val, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLUE", CPTR(val, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "WHITE", CPTR(val, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLACK", CPTR(val, E1_BLACK)) < 0) FAIL_STACK_ERROR
- if(H5Tcommit2(cwg, "e1_a", type, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT) < 0) FAIL_STACK_ERROR
- if(H5Tclose(type) < 0) FAIL_STACK_ERROR
+ if ((type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "RED", CPTR(val, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "GREEN", CPTR(val, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLUE", CPTR(val, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "WHITE", CPTR(val, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLACK", CPTR(val, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tcommit2(cwg, "e1_a", type, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(type) < 0)
+ FAIL_STACK_ERROR
/* A smaller type */
- if((type = H5Tcreate(H5T_ENUM, (size_t)1)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "RED", CPTR(val8, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "GREEN", CPTR(val8, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLUE", CPTR(val8, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "WHITE", CPTR(val8, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLACK", CPTR(val8, E1_BLACK)) < 0) FAIL_STACK_ERROR
- if(H5Tcommit2(cwg, "e1_b", type, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT) < 0) FAIL_STACK_ERROR
- if(H5Tclose(type) < 0) FAIL_STACK_ERROR
+ if ((type = H5Tcreate(H5T_ENUM, (size_t)1)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "RED", CPTR(val8, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "GREEN", CPTR(val8, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLUE", CPTR(val8, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "WHITE", CPTR(val8, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLACK", CPTR(val8, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tcommit2(cwg, "e1_b", type, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(type) < 0)
+ FAIL_STACK_ERROR
/* A non-native type */
- if(H5T_ORDER_BE == H5Tget_order(H5T_NATIVE_INT)) {
- if ((type = H5Tenum_create(H5T_STD_U8LE)) < 0) FAIL_STACK_ERROR
- } else {
- if ((type = H5Tenum_create(H5T_STD_U8BE)) < 0) FAIL_STACK_ERROR
+ if (H5T_ORDER_BE == H5Tget_order(H5T_NATIVE_INT)) {
+ if ((type = H5Tenum_create(H5T_STD_U8LE)) < 0)
+ FAIL_STACK_ERROR
}
- if(H5Tenum_insert(type, "RED", CPTR(val8, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "GREEN", CPTR(val8, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLUE", CPTR(val8, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "WHITE", CPTR(val8, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLACK", CPTR(val8, E1_BLACK)) < 0) FAIL_STACK_ERROR
- if(H5Tcommit2(cwg, "e1_c", type, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT) < 0) FAIL_STACK_ERROR
- if(H5Tclose(type) < 0) FAIL_STACK_ERROR
-
- if(H5Gclose(cwg) < 0) FAIL_STACK_ERROR
+ else {
+ if ((type = H5Tenum_create(H5T_STD_U8BE)) < 0)
+ FAIL_STACK_ERROR
+ }
+ if (H5Tenum_insert(type, "RED", CPTR(val8, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "GREEN", CPTR(val8, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLUE", CPTR(val8, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "WHITE", CPTR(val8, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLACK", CPTR(val8, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tcommit2(cwg, "e1_c", type, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(type) < 0)
+ FAIL_STACK_ERROR
+
+ if (H5Gclose(cwg) < 0)
+ FAIL_STACK_ERROR
PASSED();
return 0;
- error:
- H5E_BEGIN_TRY {
- H5Tclose(type);
- H5Gclose(cwg);
- } H5E_END_TRY;
+error:
+ H5E_BEGIN_TRY
+ {
+ H5Tclose(type);
+ H5Gclose(cwg);
+ }
+ H5E_END_TRY;
return 1;
}
-
/*-------------------------------------------------------------------------
* Function: test_conv
*
@@ -126,140 +145,162 @@ test_named(hid_t file)
static int
test_conv(hid_t file)
{
- hid_t cwg=-1, type=-1, space=-1, dset=-1;
- c_e1 val;
+ hid_t cwg = -1, type = -1, space = -1, dset = -1;
+ c_e1 val;
/* Some values are out of range for testing. The library should accept them */
- static c_e1 data1[]={E1_RED, E1_GREEN, E1_BLUE, E1_GREEN, E1_WHITE,
- E1_WHITE, E1_BLACK, E1_GREEN, E1_BLUE, E1_RED,
- E1_RED, E1_BLUE, E1_GREEN, E1_BLACK, E1_WHITE,
- E1_RED, E1_WHITE, (c_e1)0, (c_e1)-1, (c_e1)-2};
- c_e1 data2[NELMTS(data1)];
- short data_short[NELMTS(data1)];
- int data_int[NELMTS(data1)];
- double data_double[NELMTS(data1)];
- hsize_t ds_size[1]={NELMTS(data1)};
- size_t i;
+ static c_e1 data1[] = {E1_RED, E1_GREEN, E1_BLUE, E1_GREEN, E1_WHITE, E1_WHITE, E1_BLACK,
+ E1_GREEN, E1_BLUE, E1_RED, E1_RED, E1_BLUE, E1_GREEN, E1_BLACK,
+ E1_WHITE, E1_RED, E1_WHITE, (c_e1)0, (c_e1)-1, (c_e1)-2};
+ c_e1 data2[NELMTS(data1)];
+ short data_short[NELMTS(data1)];
+ int data_int[NELMTS(data1)];
+ double data_double[NELMTS(data1)];
+ hsize_t ds_size[1] = {NELMTS(data1)};
+ size_t i;
TESTING("enumeration conversions");
- if((cwg = H5Gcreate2(file, "test_conv", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
-
- if((type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "RED", CPTR(val, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "GREEN", CPTR(val, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLUE", CPTR(val, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "WHITE", CPTR(val, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLACK", CPTR(val, E1_BLACK)) < 0) FAIL_STACK_ERROR
-
- if((space = H5Screate_simple(1, ds_size, NULL)) < 0) FAIL_STACK_ERROR
+ if ((cwg = H5Gcreate2(file, "test_conv", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "RED", CPTR(val, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "GREEN", CPTR(val, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLUE", CPTR(val, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "WHITE", CPTR(val, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLACK", CPTR(val, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((space = H5Screate_simple(1, ds_size, NULL)) < 0)
+ FAIL_STACK_ERROR
/***************************************
* Dataset of enumeration type
***************************************/
/* Create a dataset of enum type and write enum data to it */
- if((dset = H5Dcreate2(cwg, "color_table1", type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
- if(H5Dwrite(dset, type, space, space, H5P_DEFAULT, data1) < 0) FAIL_STACK_ERROR
+ if ((dset = H5Dcreate2(cwg, "color_table1", type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Dwrite(dset, type, space, space, H5P_DEFAULT, data1) < 0)
+ FAIL_STACK_ERROR
/* Test reading back the data with no conversion */
- if(H5Dread(dset, type, space, space, H5P_DEFAULT, data2) < 0) FAIL_STACK_ERROR
+ if (H5Dread(dset, type, space, space, H5P_DEFAULT, data2) < 0)
+ FAIL_STACK_ERROR
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if(data1[i] != data2[i]) {
- H5_FAILED();
- HDprintf(" 1. data1[%lu]=%d, data2[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data2[i]));
- goto error;
- } /* end if */
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if (data1[i] != data2[i]) {
+ H5_FAILED();
+ HDprintf(" 1. data1[%lu]=%d, data2[%lu]=%d (should be same)\n", (unsigned long)i,
+ (int)(data1[i]), (unsigned long)i, (int)(data2[i]));
+ goto error;
+ } /* end if */
/* Test converting the data to integer. Read enum data back as integer */
- if(H5Dread(dset, H5T_NATIVE_SHORT, space, space, H5P_DEFAULT, data_short) < 0) FAIL_STACK_ERROR
+ if (H5Dread(dset, H5T_NATIVE_SHORT, space, space, H5P_DEFAULT, data_short) < 0)
+ FAIL_STACK_ERROR
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if((short)data1[i] != data_short[i]) {
- H5_FAILED();
- HDprintf(" 2. data1[%lu]=%d, data_short[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data_short[i]));
- goto error;
- } /* end if */
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if ((short)data1[i] != data_short[i]) {
+ H5_FAILED();
+ HDprintf(" 2. data1[%lu]=%d, data_short[%lu]=%d (should be same)\n", (unsigned long)i,
+ (int)(data1[i]), (unsigned long)i, (int)(data_short[i]));
+ goto error;
+ } /* end if */
/* Test converting the data to floating number. Read enum data back as floating number */
- if(H5Dread(dset, H5T_NATIVE_DOUBLE, space, space, H5P_DEFAULT, data_double) < 0) FAIL_STACK_ERROR
+ if (H5Dread(dset, H5T_NATIVE_DOUBLE, space, space, H5P_DEFAULT, data_double) < 0)
+ FAIL_STACK_ERROR
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if((int)data1[i] != (int)data_double[i]) {
- H5_FAILED();
- HDprintf(" 3. data1[%lu]=%d, data_double[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data_double[i]));
- goto error;
- } /* end if */
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if ((int)data1[i] != (int)data_double[i]) {
+ H5_FAILED();
+ HDprintf(" 3. data1[%lu]=%d, data_double[%lu]=%d (should be same)\n", (unsigned long)i,
+ (int)(data1[i]), (unsigned long)i, (int)(data_double[i]));
+ goto error;
+ } /* end if */
- if(H5Dclose(dset) < 0) FAIL_STACK_ERROR
+ if (H5Dclose(dset) < 0)
+ FAIL_STACK_ERROR
/***************************************
* Dataset of integer type
***************************************/
/* Create a dataset of native integer and write enum data to it */
- if((dset = H5Dcreate2(cwg, "color_table2", H5T_NATIVE_INT, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
+ if ((dset = H5Dcreate2(cwg, "color_table2", H5T_NATIVE_INT, space, H5P_DEFAULT, H5P_DEFAULT,
+ H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
- if(H5Dwrite(dset, type, space, space, H5P_DEFAULT, data1) < 0) FAIL_STACK_ERROR
+ if (H5Dwrite(dset, type, space, space, H5P_DEFAULT, data1) < 0)
+ FAIL_STACK_ERROR
/* Test reading back the data with no conversion */
- if(H5Dread(dset, H5T_NATIVE_INT, space, space, H5P_DEFAULT, data_int) < 0) FAIL_STACK_ERROR
+ if (H5Dread(dset, H5T_NATIVE_INT, space, space, H5P_DEFAULT, data_int) < 0)
+ FAIL_STACK_ERROR
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if((int)data1[i] != data_int[i]) {
- H5_FAILED();
- HDprintf(" 4. data1[%lu]=%d, data_int[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data_int[i]));
- goto error;
- } /* end if */
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if ((int)data1[i] != data_int[i]) {
+ H5_FAILED();
+ HDprintf(" 4. data1[%lu]=%d, data_int[%lu]=%d (should be same)\n", (unsigned long)i,
+ (int)(data1[i]), (unsigned long)i, (int)(data_int[i]));
+ goto error;
+ } /* end if */
- if(H5Dclose(dset) < 0) FAIL_STACK_ERROR
+ if (H5Dclose(dset) < 0)
+ FAIL_STACK_ERROR
/***************************************
* Dataset of double type
***************************************/
/* Create a dataset of native double and write enum data to it */
- if((dset = H5Dcreate2(cwg, "color_table3", H5T_NATIVE_DOUBLE, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
+ if ((dset = H5Dcreate2(cwg, "color_table3", H5T_NATIVE_DOUBLE, space, H5P_DEFAULT, H5P_DEFAULT,
+ H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
- if(H5Dwrite(dset, type, space, space, H5P_DEFAULT, data1) < 0) FAIL_STACK_ERROR
+ if (H5Dwrite(dset, type, space, space, H5P_DEFAULT, data1) < 0)
+ FAIL_STACK_ERROR
/* Test reading back the data with no conversion */
- if(H5Dread(dset, H5T_NATIVE_DOUBLE, space, space, H5P_DEFAULT, data_double) < 0) FAIL_STACK_ERROR
+ if (H5Dread(dset, H5T_NATIVE_DOUBLE, space, space, H5P_DEFAULT, data_double) < 0)
+ FAIL_STACK_ERROR
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if((int)data1[i] != (int)data_double[i]) {
- H5_FAILED();
- HDprintf(" 5. data1[%lu]=%d, data_double[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data_double[i]));
- goto error;
- } /* end if */
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if ((int)data1[i] != (int)data_double[i]) {
+ H5_FAILED();
+ HDprintf(" 5. data1[%lu]=%d, data_double[%lu]=%d (should be same)\n", (unsigned long)i,
+ (int)(data1[i]), (unsigned long)i, (int)(data_double[i]));
+ goto error;
+ } /* end if */
- if(H5Dclose(dset) < 0) FAIL_STACK_ERROR
+ if (H5Dclose(dset) < 0)
+ FAIL_STACK_ERROR
- if(H5Sclose(space) < 0) FAIL_STACK_ERROR
- if(H5Tclose(type) < 0) FAIL_STACK_ERROR
- if(H5Gclose(cwg) < 0) FAIL_STACK_ERROR
+ if (H5Sclose(space) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Gclose(cwg) < 0)
+ FAIL_STACK_ERROR
PASSED();
return 0;
- error:
- H5E_BEGIN_TRY {
- H5Dclose(dset);
- H5Sclose(space);
- H5Tclose(type);
- H5Gclose(cwg);
- } H5E_END_TRY;
+error:
+ H5E_BEGIN_TRY
+ {
+ H5Dclose(dset);
+ H5Sclose(space);
+ H5Tclose(type);
+ H5Gclose(cwg);
+ }
+ H5E_END_TRY;
return 1;
}
-
/*-------------------------------------------------------------------------
* Function: test_tr1
*
@@ -282,70 +323,91 @@ test_conv(hid_t file)
static int
test_tr1(hid_t file)
{
- hid_t cwg = -1, m_type = -1, f_type = -1, space = -1, dset = -1;
- hsize_t ds_size[1] = {10};
- size_t i;
- c_e1 eval;
- int ival;
- static c_e1 data1[10] = {E1_RED, E1_GREEN, E1_BLUE, E1_GREEN, E1_WHITE,
- E1_WHITE, E1_BLACK, E1_GREEN, E1_BLUE, E1_RED};
- c_e1 data2[10];
+ hid_t cwg = -1, m_type = -1, f_type = -1, space = -1, dset = -1;
+ hsize_t ds_size[1] = {10};
+ size_t i;
+ c_e1 eval;
+ int ival;
+ static c_e1 data1[10] = {E1_RED, E1_GREEN, E1_BLUE, E1_GREEN, E1_WHITE,
+ E1_WHITE, E1_BLACK, E1_GREEN, E1_BLUE, E1_RED};
+ c_e1 data2[10];
TESTING("O(1) conversions");
- if((cwg = H5Gcreate2(file, "test_tr1", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
-
- if((m_type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "RED", CPTR(eval, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "GREEN", CPTR(eval, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "BLUE", CPTR(eval, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "WHITE", CPTR(eval, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "BLACK", CPTR(eval, E1_BLACK)) < 0) FAIL_STACK_ERROR
-
-
- if((f_type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "RED", CPTR(ival, 105)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "GREEN", CPTR(ival, 104)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "BLUE", CPTR(ival, 103)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "WHITE", CPTR(ival, 102)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "BLACK", CPTR(ival, 101)) < 0) FAIL_STACK_ERROR
-
- if((space = H5Screate_simple(1, ds_size, NULL)) < 0) FAIL_STACK_ERROR
- if((dset = H5Dcreate2(cwg, "color_table", f_type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
- if(H5Dwrite(dset, m_type, space, space, H5P_DEFAULT, data1) < 0) FAIL_STACK_ERROR
- if(H5Dread(dset, m_type, space, space, H5P_DEFAULT, data2) < 0) FAIL_STACK_ERROR
-
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if(data1[i] != data2[i]) {
+ if ((cwg = H5Gcreate2(file, "test_tr1", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((m_type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "RED", CPTR(eval, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "GREEN", CPTR(eval, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "BLUE", CPTR(eval, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "WHITE", CPTR(eval, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "BLACK", CPTR(eval, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((f_type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "RED", CPTR(ival, 105)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "GREEN", CPTR(ival, 104)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "BLUE", CPTR(ival, 103)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "WHITE", CPTR(ival, 102)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "BLACK", CPTR(ival, 101)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((space = H5Screate_simple(1, ds_size, NULL)) < 0)
+ FAIL_STACK_ERROR
+ if ((dset = H5Dcreate2(cwg, "color_table", f_type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Dwrite(dset, m_type, space, space, H5P_DEFAULT, data1) < 0)
+ FAIL_STACK_ERROR
+ if (H5Dread(dset, m_type, space, space, H5P_DEFAULT, data2) < 0)
+ FAIL_STACK_ERROR
+
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if (data1[i] != data2[i]) {
H5_FAILED();
- HDprintf(" data1[%lu]=%d, data2[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data2[i]));
+ HDprintf(" data1[%lu]=%d, data2[%lu]=%d (should be same)\n", (unsigned long)i, (int)(data1[i]),
+ (unsigned long)i, (int)(data2[i]));
goto error;
}
- if(H5Dclose(dset) < 0) FAIL_STACK_ERROR
- if(H5Sclose(space) < 0) FAIL_STACK_ERROR
- if(H5Tclose(m_type) < 0) FAIL_STACK_ERROR
- if(H5Tclose(f_type) < 0) FAIL_STACK_ERROR
- if(H5Gclose(cwg) < 0) FAIL_STACK_ERROR
+ if (H5Dclose(dset) < 0)
+ FAIL_STACK_ERROR
+ if (H5Sclose(space) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(m_type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(f_type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Gclose(cwg) < 0)
+ FAIL_STACK_ERROR
PASSED();
return 0;
error:
- H5E_BEGIN_TRY {
+ H5E_BEGIN_TRY
+ {
H5Dclose(dset);
H5Sclose(space);
H5Tclose(m_type);
H5Tclose(f_type);
H5Gclose(cwg);
- } H5E_END_TRY;
+ }
+ H5E_END_TRY;
return 1;
}
-
/*-------------------------------------------------------------------------
* Function: test_tr2
*
@@ -365,69 +427,91 @@ error:
static int
test_tr2(hid_t file)
{
- hid_t cwg = -1, m_type = -1, f_type = -1, space = -1, dset = -1;
- hsize_t ds_size[1] = {10};
- size_t i;
- c_e1 val1;
- int val2;
- static c_e1 data1[10] = {E1_RED, E1_GREEN, E1_BLUE, E1_GREEN, E1_WHITE,
- E1_WHITE, E1_BLACK, E1_GREEN, E1_BLUE, E1_RED};
- c_e1 data2[10];
+ hid_t cwg = -1, m_type = -1, f_type = -1, space = -1, dset = -1;
+ hsize_t ds_size[1] = {10};
+ size_t i;
+ c_e1 val1;
+ int val2;
+ static c_e1 data1[10] = {E1_RED, E1_GREEN, E1_BLUE, E1_GREEN, E1_WHITE,
+ E1_WHITE, E1_BLACK, E1_GREEN, E1_BLUE, E1_RED};
+ c_e1 data2[10];
TESTING("O(log N) conversions");
- if((cwg = H5Gcreate2(file, "test_tr2", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
-
- if((m_type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "RED", CPTR(val1, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "GREEN", CPTR(val1, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "BLUE", CPTR(val1, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "WHITE", CPTR(val1, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(m_type, "BLACK", CPTR(val1, E1_BLACK)) < 0) FAIL_STACK_ERROR
-
- if((f_type = H5Tcreate(H5T_ENUM, sizeof(int))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "RED", CPTR(val2, 1050)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "GREEN", CPTR(val2, 1040)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "BLUE", CPTR(val2, 1030)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "WHITE", CPTR(val2, 1020)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(f_type, "BLACK", CPTR(val2, 1010)) < 0) FAIL_STACK_ERROR
-
- if((space = H5Screate_simple(1, ds_size, NULL)) < 0) FAIL_STACK_ERROR
- if((dset = H5Dcreate2(cwg, "color_table", f_type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0) FAIL_STACK_ERROR
- if(H5Dwrite(dset, m_type, space, space, H5P_DEFAULT, data1) < 0) FAIL_STACK_ERROR
- if(H5Dread(dset, m_type, space, space, H5P_DEFAULT, data2) < 0) FAIL_STACK_ERROR
-
- for(i = 0; i < (size_t)ds_size[0]; i++)
- if(data1[i] != data2[i]) {
+ if ((cwg = H5Gcreate2(file, "test_tr2", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((m_type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "RED", CPTR(val1, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "GREEN", CPTR(val1, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "BLUE", CPTR(val1, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "WHITE", CPTR(val1, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(m_type, "BLACK", CPTR(val1, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((f_type = H5Tcreate(H5T_ENUM, sizeof(int))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "RED", CPTR(val2, 1050)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "GREEN", CPTR(val2, 1040)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "BLUE", CPTR(val2, 1030)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "WHITE", CPTR(val2, 1020)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(f_type, "BLACK", CPTR(val2, 1010)) < 0)
+ FAIL_STACK_ERROR
+
+ if ((space = H5Screate_simple(1, ds_size, NULL)) < 0)
+ FAIL_STACK_ERROR
+ if ((dset = H5Dcreate2(cwg, "color_table", f_type, space, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Dwrite(dset, m_type, space, space, H5P_DEFAULT, data1) < 0)
+ FAIL_STACK_ERROR
+ if (H5Dread(dset, m_type, space, space, H5P_DEFAULT, data2) < 0)
+ FAIL_STACK_ERROR
+
+ for (i = 0; i < (size_t)ds_size[0]; i++)
+ if (data1[i] != data2[i]) {
H5_FAILED();
- HDprintf(" data1[%lu]=%d, data2[%lu]=%d (should be same)\n",
- (unsigned long)i, (int)(data1[i]),
- (unsigned long)i, (int)(data2[i]));
+ HDprintf(" data1[%lu]=%d, data2[%lu]=%d (should be same)\n", (unsigned long)i, (int)(data1[i]),
+ (unsigned long)i, (int)(data2[i]));
goto error;
}
- if(H5Dclose(dset) < 0) FAIL_STACK_ERROR
- if(H5Sclose(space) < 0) FAIL_STACK_ERROR
- if(H5Tclose(m_type) < 0) FAIL_STACK_ERROR
- if(H5Tclose(f_type) < 0) FAIL_STACK_ERROR
- if(H5Gclose(cwg) < 0) FAIL_STACK_ERROR
+ if (H5Dclose(dset) < 0)
+ FAIL_STACK_ERROR
+ if (H5Sclose(space) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(m_type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tclose(f_type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Gclose(cwg) < 0)
+ FAIL_STACK_ERROR
PASSED();
return 0;
error:
- H5E_BEGIN_TRY {
+ H5E_BEGIN_TRY
+ {
H5Dclose(dset);
H5Sclose(space);
H5Tclose(m_type);
H5Tclose(f_type);
H5Gclose(cwg);
- } H5E_END_TRY;
+ }
+ H5E_END_TRY;
return 1;
}
-
/*-------------------------------------------------------------------------
* Function: test_value_dsnt_exist
*
@@ -455,62 +539,74 @@ static int
test_value_dsnt_exist(void)
{
- hid_t datatype_id=(-1); /* identifiers */
- int val;
- char nam[100];
+ hid_t datatype_id = (-1); /* identifiers */
+ int val;
+ char nam[100];
size_t size = 100;
TESTING("for non-existing name and value");
/* Turn off error reporting since we expect failure in this test */
- if (H5Eset_auto2(H5E_DEFAULT, NULL, NULL) < 0) goto error;
+ if (H5Eset_auto2(H5E_DEFAULT, NULL, NULL) < 0)
+ goto error;
- if ((datatype_id = H5Tenum_create(H5T_NATIVE_INT))< 0) goto error;
+ if ((datatype_id = H5Tenum_create(H5T_NATIVE_INT)) < 0)
+ goto error;
/* These calls should fail, since no memebrs exist yet */
- if (H5Tenum_valueof(datatype_id, "SAX", &val) >= 0) goto error;
+ if (H5Tenum_valueof(datatype_id, "SAX", &val) >= 0)
+ goto error;
val = 3;
- if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0) goto error;
+ if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0)
+ goto error;
val = 2;
- if (H5Tenum_insert(datatype_id, "TWO", (int *)&val) < 0) goto error;
+ if (H5Tenum_insert(datatype_id, "TWO", (int *)&val) < 0)
+ goto error;
val = 6;
- if (H5Tenum_insert(datatype_id, "SIX", (int *)&val) < 0) goto error;
+ if (H5Tenum_insert(datatype_id, "SIX", (int *)&val) < 0)
+ goto error;
val = 10;
- if (H5Tenum_insert(datatype_id, "TEN", (int *)&val) < 0) goto error;
+ if (H5Tenum_insert(datatype_id, "TEN", (int *)&val) < 0)
+ goto error;
/* This call should fail since we did not create a member with value = 3*/
val = 3;
- if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0) goto error;
+ if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0)
+ goto error;
/* This call should fail since we did not create a member with value = 11*/
val = 11;
- if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0) goto error;
+ if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0)
+ goto error;
/* This call should fail since we did not create a member with value = 0*/
val = 0;
- if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0) goto error;
+ if (H5Tenum_nameof(datatype_id, &val, nam, size) >= 0)
+ goto error;
/* This call should fail since we do not have SAX name in the type */
- if (H5Tenum_valueof(datatype_id, "SAX", &val) >= 0) goto error;
+ if (H5Tenum_valueof(datatype_id, "SAX", &val) >= 0)
+ goto error;
/* This call should fail since we do not have TEEN name in the type */
- if (H5Tenum_valueof(datatype_id, "TEEN", &val) >= 0) goto error;
+ if (H5Tenum_valueof(datatype_id, "TEEN", &val) >= 0)
+ goto error;
/* This call should fail since we do not have A name in the type */
- if (H5Tenum_valueof(datatype_id, "A", &val) >= 0) goto error;
+ if (H5Tenum_valueof(datatype_id, "A", &val) >= 0)
+ goto error;
- if (H5Tclose(datatype_id) < 0) goto error;
+ if (H5Tclose(datatype_id) < 0)
+ goto error;
PASSED();
return 0;
- error:
- H5E_BEGIN_TRY {
- H5Tclose(datatype_id);
- } H5E_END_TRY;
+error:
+ H5E_BEGIN_TRY { H5Tclose(datatype_id); }
+ H5E_END_TRY;
return 1;
}
-
/*-------------------------------------------------------------------------
* Function: test_funcs
*
@@ -531,97 +627,101 @@ test_value_dsnt_exist(void)
static int
test_funcs(void)
{
- hid_t type=-1;
- c_e1 val;
- size_t size;
- H5T_pad_t inpad;
- H5T_cset_t cset;
- herr_t ret;
+ hid_t type = -1;
+ c_e1 val;
+ size_t size;
+ H5T_pad_t inpad;
+ H5T_cset_t cset;
+ herr_t ret;
TESTING("some functions with enumeration types");
/* A native integer */
- if((type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "RED", CPTR(val, E1_RED )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "GREEN", CPTR(val, E1_GREEN)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLUE", CPTR(val, E1_BLUE )) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "WHITE", CPTR(val, E1_WHITE)) < 0) FAIL_STACK_ERROR
- if(H5Tenum_insert(type, "BLACK", CPTR(val, E1_BLACK)) < 0) FAIL_STACK_ERROR
-
- if(H5Tget_precision(type) == 0) FAIL_STACK_ERROR
- if(H5Tget_size(type) == 0) FAIL_STACK_ERROR
- if(H5Tget_offset(type) < 0) FAIL_STACK_ERROR
- if(H5Tget_sign(type) < 0) FAIL_STACK_ERROR
- if(H5Tget_super(type) < 0) FAIL_STACK_ERROR
-
- H5E_BEGIN_TRY {
- ret=H5Tset_pad(type, H5T_PAD_ZERO, H5T_PAD_ONE);
- } H5E_END_TRY;
- if (ret>=0) {
+ if ((type = H5Tcreate(H5T_ENUM, sizeof(c_e1))) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "RED", CPTR(val, E1_RED)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "GREEN", CPTR(val, E1_GREEN)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLUE", CPTR(val, E1_BLUE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "WHITE", CPTR(val, E1_WHITE)) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tenum_insert(type, "BLACK", CPTR(val, E1_BLACK)) < 0)
+ FAIL_STACK_ERROR
+
+ if (H5Tget_precision(type) == 0)
+ FAIL_STACK_ERROR
+ if (H5Tget_size(type) == 0)
+ FAIL_STACK_ERROR
+ if (H5Tget_offset(type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tget_sign(type) < 0)
+ FAIL_STACK_ERROR
+ if (H5Tget_super(type) < 0)
+ FAIL_STACK_ERROR
+
+ H5E_BEGIN_TRY { ret = H5Tset_pad(type, H5T_PAD_ZERO, H5T_PAD_ONE); }
+ H5E_END_TRY;
+ if (ret >= 0) {
H5_FAILED();
HDprintf("Operation not allowed for this type.\n");
goto error;
} /* end if */
- H5E_BEGIN_TRY {
- size=H5Tget_ebias(type);
- } H5E_END_TRY;
- if (size>0) {
+ H5E_BEGIN_TRY { size = H5Tget_ebias(type); }
+ H5E_END_TRY;
+ if (size > 0) {
H5_FAILED();
HDprintf("Operation not allowed for this type.\n");
goto error;
} /* end if */
- H5E_BEGIN_TRY {
- inpad=H5Tget_inpad(type);
- } H5E_END_TRY;
- if (inpad>-1) {
+ H5E_BEGIN_TRY { inpad = H5Tget_inpad(type); }
+ H5E_END_TRY;
+ if (inpad > -1) {
H5_FAILED();
HDprintf("Operation not allowed for this type.\n");
goto error;
} /* end if */
- H5E_BEGIN_TRY {
- cset=H5Tget_cset(type);
- } H5E_END_TRY;
- if (cset>-1) {
+ H5E_BEGIN_TRY { cset = H5Tget_cset(type); }
+ H5E_END_TRY;
+ if (cset > -1) {
H5_FAILED();
HDprintf("Operation not allowed for this type.\n");
goto error;
} /* end if */
size = 16;
- H5E_BEGIN_TRY {
- ret=H5Tset_offset(type, (size_t)size);
- } H5E_END_TRY;
- if (ret>=0) {
+ H5E_BEGIN_TRY { ret = H5Tset_offset(type, (size_t)size); }
+ H5E_END_TRY;
+ if (ret >= 0) {
H5_FAILED();
HDprintf("Operation not allowed for this type.\n");
goto error;
} /* end if */
- H5E_BEGIN_TRY {
- ret=H5Tset_order(type, H5T_ORDER_BE);
- } H5E_END_TRY;
- if (ret>=0) {
+ H5E_BEGIN_TRY { ret = H5Tset_order(type, H5T_ORDER_BE); }
+ H5E_END_TRY;
+ if (ret >= 0) {
H5_FAILED();
HDprintf("Operation not allowed for this type.\n");
goto error;
} /* end if */
- if (H5Tclose(type)<0) goto error;
+ if (H5Tclose(type) < 0)
+ goto error;
PASSED();
return 0;
- error:
- H5E_BEGIN_TRY {
- H5Tclose(type);
- } H5E_END_TRY;
+error:
+ H5E_BEGIN_TRY { H5Tclose(type); }
+ H5E_END_TRY;
return 1;
}
-
/*-------------------------------------------------------------------------
* Function: main
*
@@ -641,16 +741,17 @@ test_funcs(void)
int
main(void)
{
- hid_t fapl=-1, file=-1;
- char name[1024];
- int nerrors=0;
+ hid_t fapl = -1, file = -1;
+ char name[1024];
+ int nerrors = 0;
h5_reset();
fapl = h5_fileaccess();
/* Create the file */
h5_fixname(FILENAME[0], fapl, name, sizeof name);
- if ((file=H5Fcreate(name, H5F_ACC_TRUNC, H5P_DEFAULT, fapl))<0) goto error;
+ if ((file = H5Fcreate(name, H5F_ACC_TRUNC, H5P_DEFAULT, fapl)) < 0)
+ goto error;
/* Tests */
nerrors += test_named(file);
@@ -665,12 +766,13 @@ main(void)
/* Verify symbol table messages are cached */
nerrors += (h5_verify_cached_stabs(FILENAME, fapl) < 0 ? 1 : 0);
- if (nerrors) goto error;
+ if (nerrors)
+ goto error;
puts("All enum tests passed.");
h5_cleanup(FILENAME, fapl);
return 0;
- error:
+error:
puts("*** ENUM TESTS FAILED ***");
return 1;
}