diff options
Diffstat (limited to 'c++/test/tfile.cpp')
-rw-r--r-- | c++/test/tfile.cpp | 469 |
1 files changed, 234 insertions, 235 deletions
diff --git a/c++/test/tfile.cpp b/c++/test/tfile.cpp index d5278d5..31a7aa0 100644 --- a/c++/test/tfile.cpp +++ b/c++/test/tfile.cpp @@ -6,7 +6,7 @@ * This file is part of HDF5. The full HDF5 copyright notice, including * * terms governing use, modification, and redistribution, is contained in * * the COPYING file, which can be found at the root of the source code * - * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * + * distribution tree, or in https://www.hdfgroup.org/licenses. * * If you do not have access to either file, you may request a copy from * * help@hdfgroup.org. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ @@ -30,37 +30,37 @@ using std::cerr; using std::endl; #include <string> -#include "H5Cpp.h" // C++ API header file +#include "H5Cpp.h" // C++ API header file using namespace H5; -#include "h5cpputil.h" // C++ utilility header file - -const hsize_t F1_USERBLOCK_SIZE = (hsize_t)0; -const size_t F1_OFFSET_SIZE = sizeof(haddr_t); -const size_t F1_LENGTH_SIZE = sizeof(hsize_t); -const unsigned F1_SYM_LEAF_K = 4; -const unsigned F1_SYM_INTERN_K = 16; -const H5std_string FILE1("tfile1.h5"); - -const hsize_t F2_USERBLOCK_SIZE = (hsize_t)512; -const size_t F2_OFFSET_SIZE = 8; -const size_t F2_LENGTH_SIZE = 8; -const unsigned F2_SYM_LEAF_K = 8; -const unsigned F2_SYM_INTERN_K = 32; -const unsigned F2_ISTORE = 64; -const H5std_string FILE2("tfile2.h5"); - -const hsize_t F3_USERBLOCK_SIZE = (hsize_t)0; -const size_t F3_OFFSET_SIZE = F2_OFFSET_SIZE; -const size_t F3_LENGTH_SIZE = F2_LENGTH_SIZE; -const unsigned F3_SYM_LEAF_K = F2_SYM_LEAF_K; -const unsigned F3_SYM_INTERN_K = F2_SYM_INTERN_K; -const H5std_string FILE3("tfile3.h5"); - -const int KB = 1024; -const H5std_string FILE4("tfile4.h5"); - - +#include "h5test.h" +#include "h5cpputil.h" // C++ utilility header file + +const hsize_t F1_USERBLOCK_SIZE = (hsize_t)0; +const size_t F1_OFFSET_SIZE = sizeof(haddr_t); +const size_t F1_LENGTH_SIZE = sizeof(hsize_t); +const unsigned F1_SYM_LEAF_K = 4; +const unsigned F1_SYM_INTERN_K = 16; +const H5std_string FILE1("tfile1.h5"); + +const hsize_t F2_USERBLOCK_SIZE = (hsize_t)512; +const size_t F2_OFFSET_SIZE = 8; +const size_t F2_LENGTH_SIZE = 8; +const unsigned F2_SYM_LEAF_K = 8; +const unsigned F2_SYM_INTERN_K = 32; +const unsigned F2_ISTORE = 64; +const H5std_string FILE2("tfile2.h5"); + +const hsize_t F3_USERBLOCK_SIZE = (hsize_t)0; +const size_t F3_OFFSET_SIZE = F2_OFFSET_SIZE; +const size_t F3_LENGTH_SIZE = F2_LENGTH_SIZE; +const unsigned F3_SYM_LEAF_K = F2_SYM_LEAF_K; +const unsigned F3_SYM_INTERN_K = F2_SYM_INTERN_K; +const H5std_string FILE3("tfile3.h5"); + +const int KB = 1024; +const H5std_string FILE4("tfile4.h5"); + /*------------------------------------------------------------------------- * Function: test_file_create * @@ -81,7 +81,8 @@ const H5std_string FILE4("tfile4.h5"); * *------------------------------------------------------------------------- */ -static void test_file_create() +static void +test_file_create() { // Output message about test being performed SUBTEST("File Creation I/O"); @@ -94,21 +95,22 @@ static void test_file_create() remove(FILE1.c_str()); // Setting this to NULL for cleaning up in failure situations - H5File* file1 = NULL; + H5File *file1 = NULL; try { // Create file FILE1 - file1 = new H5File (FILE1, H5F_ACC_EXCL); + file1 = new H5File(FILE1, H5F_ACC_EXCL); // Try to create the same file with H5F_ACC_TRUNC. This should fail // because file1 is the same file and is currently open. try { - H5File file2 (FILE1, H5F_ACC_TRUNC); // should throw E + H5File file2(FILE1, H5F_ACC_TRUNC); // should throw E // Should FAIL but didn't, so throw an invalid action exception throw InvalidActionException("H5File constructor", "Attempted to create an existing file."); } - catch (FileIException& E) // catch truncating existing file - {} // do nothing, FAIL expected + catch (FileIException &E) // catch truncating existing file + { + } // do nothing, FAIL expected // Close file1 delete file1; @@ -117,52 +119,56 @@ static void test_file_create() // Try again with H5F_ACC_EXCL. This should fail because the file // already exists from the previous steps. try { - H5File file2(FILE1, H5F_ACC_EXCL); // should throw E + H5File file2(FILE1, H5F_ACC_EXCL); // should throw E // Should FAIL but didn't, so throw an invalid action exception throw InvalidActionException("H5File constructor", "File already exists."); } - catch (FileIException& E) // catching creating existing file - {} // do nothing, FAIL expected + catch (FileIException &E) // catching creating existing file + { + } // do nothing, FAIL expected // Test create with H5F_ACC_TRUNC. This will truncate the existing file. - file1 = new H5File (FILE1, H5F_ACC_TRUNC); + file1 = new H5File(FILE1, H5F_ACC_TRUNC); // Try to create first file again. This should fail because file1 // is the same file and is currently open. try { - H5File file2 (FILE1, H5F_ACC_TRUNC); // should throw E + H5File file2(FILE1, H5F_ACC_TRUNC); // should throw E // Should FAIL but didn't, so throw an invalid action exception throw InvalidActionException("H5File constructor", "H5F_ACC_TRUNC attempt on an opened file."); } - catch (FileIException& E) // catching truncating opened file - {} // do nothing, FAIL expected + catch (FileIException &E) // catching truncating opened file + { + } // do nothing, FAIL expected // Try with H5F_ACC_EXCL. This should fail too because the file already // exists. try { - H5File file3 (FILE1, H5F_ACC_EXCL); // should throw E + H5File file3(FILE1, H5F_ACC_EXCL); // should throw E // Should FAIL but didn't, so throw an invalid action exception throw InvalidActionException("H5File constructor", "H5F_ACC_EXCL attempt on an existing file."); } - catch (FileIException& E) // catching H5F_ACC_EXCL on existing file - {} // do nothing, FAIL expected + catch (FileIException &E) // catching H5F_ACC_EXCL on existing file + { + } // do nothing, FAIL expected // Get the file-creation template FileCreatPropList tmpl1 = file1->getCreatePlist(); hsize_t ublock = tmpl1.getUserblock(); - verify_val((long)ublock, (long)F1_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, __FILE__); + verify_val((long)ublock, (long)F1_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, + __FILE__); - size_t parm1, parm2; // file-creation parameters - tmpl1.getSizes( parm1, parm2); + size_t parm1, parm2; // file-creation parameters + tmpl1.getSizes(parm1, parm2); verify_val(parm1, F1_OFFSET_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); verify_val(parm2, F1_LENGTH_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); - unsigned iparm1,iparm2; // file-creation parameters - tmpl1.getSymk( iparm1, iparm2); + unsigned iparm1, iparm2; // file-creation parameters + tmpl1.getSymk(iparm1, iparm2); verify_val(iparm1, F1_SYM_INTERN_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); verify_val(iparm2, F1_SYM_LEAF_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); @@ -172,85 +178,84 @@ static void test_file_create() // Close first file delete file1; } - catch (InvalidActionException& E) - { + catch (InvalidActionException &E) { cerr << " *FAILED*" << endl; cerr << " <<< " << E.getDetailMsg() << " >>>" << endl << endl; if (file1 != NULL) // clean up delete file1; } // catch all other exceptions - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_file_create()", __LINE__, __FILE__, E.getCDetailMsg()); if (file1 != NULL) // clean up delete file1; } // Setting this to NULL for cleaning up in failure situations - FileCreatPropList* tmpl1 = NULL; - try - { + FileCreatPropList *tmpl1 = NULL; + try { // Create a new file with a non-standard file-creation template tmpl1 = new FileCreatPropList; // Set the new file-creation parameters - tmpl1->setUserblock (F2_USERBLOCK_SIZE); - tmpl1->setSizes( F2_OFFSET_SIZE, F2_LENGTH_SIZE ); - tmpl1->setSymk( F2_SYM_INTERN_K, F2_SYM_LEAF_K ); + tmpl1->setUserblock(F2_USERBLOCK_SIZE); + tmpl1->setSizes(F2_OFFSET_SIZE, F2_LENGTH_SIZE); + tmpl1->setSymk(F2_SYM_INTERN_K, F2_SYM_LEAF_K); // Try to create second file, with non-standard file-creation template // params. - H5File file2( FILE2, H5F_ACC_TRUNC, *tmpl1 ); + H5File file2(FILE2, H5F_ACC_TRUNC, *tmpl1); // Release file-creation template delete tmpl1; tmpl1 = NULL; // Get the file-creation template - tmpl1 = new FileCreatPropList (file2.getCreatePlist()); + tmpl1 = new FileCreatPropList(file2.getCreatePlist()); // Get the file-creation parameters hsize_t ublock = tmpl1->getUserblock(); - verify_val((long)ublock, (long)F2_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, __FILE__); + verify_val((long)ublock, (long)F2_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, + __FILE__); - size_t parm1, parm2; // file-creation parameters - tmpl1->getSizes( parm1, parm2); + size_t parm1, parm2; // file-creation parameters + tmpl1->getSizes(parm1, parm2); verify_val(parm1, F2_OFFSET_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); verify_val(parm2, F2_LENGTH_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); - unsigned iparm1,iparm2; // file-creation parameters - tmpl1->getSymk( iparm1, iparm2); + unsigned iparm1, iparm2; // file-creation parameters + tmpl1->getSymk(iparm1, iparm2); verify_val(iparm1, F2_SYM_INTERN_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); verify_val(iparm2, F2_SYM_LEAF_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); // Clone the file-creation template FileCreatPropList tmpl2; - tmpl2.copy (*tmpl1); + tmpl2.copy(*tmpl1); // Release file-creation template delete tmpl1; tmpl1 = NULL; // Set the new file-creation parameter - tmpl2.setUserblock( F3_USERBLOCK_SIZE ); + tmpl2.setUserblock(F3_USERBLOCK_SIZE); // Try to create second file, with non-standard file-creation template // params - H5File file3( FILE3, H5F_ACC_TRUNC, tmpl2 ); + H5File file3(FILE3, H5F_ACC_TRUNC, tmpl2); // Get the file-creation template - tmpl1 = new FileCreatPropList (file3.getCreatePlist()); + tmpl1 = new FileCreatPropList(file3.getCreatePlist()); // Get the file-creation parameters ublock = tmpl1->getUserblock(); - verify_val((long)ublock, (long)F3_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, __FILE__); + verify_val((long)ublock, (long)F3_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, + __FILE__); - tmpl1->getSizes( parm1, parm2); + tmpl1->getSizes(parm1, parm2); verify_val(parm1, F3_OFFSET_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); verify_val(parm2, F3_LENGTH_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); - tmpl1->getSymk( iparm1, iparm2); + tmpl1->getSymk(iparm1, iparm2); verify_val(iparm1, F3_SYM_INTERN_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); verify_val(iparm2, F3_SYM_LEAF_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); @@ -259,15 +264,13 @@ static void test_file_create() PASSED(); } // catch all exceptions - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_file_create()", __LINE__, __FILE__, E.getCDetailMsg()); - if (tmpl1 != NULL) // clean up + if (tmpl1 != NULL) // clean up delete tmpl1; } -} // test_file_create() +} // test_file_create() - /*------------------------------------------------------------------------- * Function: test_file_open * @@ -288,7 +291,8 @@ static void test_file_create() * *------------------------------------------------------------------------- */ -static void test_file_open() +static void +test_file_open() { // Output message about test being performed SUBTEST("File Opening I/O"); @@ -296,21 +300,22 @@ static void test_file_open() try { // Open first file - H5File file1 (FILE2, H5F_ACC_RDWR ); + H5File file1(FILE2, H5F_ACC_RDWR); // Get the file-creation template FileCreatPropList tmpl1 = file1.getCreatePlist(); // Get the file-creation parameters hsize_t ublock = tmpl1.getUserblock(); - verify_val((long)ublock, (long)F2_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, __FILE__); + verify_val((long)ublock, (long)F2_USERBLOCK_SIZE, "FileCreatPropList::getUserblock", __LINE__, + __FILE__); - size_t parm1, parm2; // file-creation parameters + size_t parm1, parm2; // file-creation parameters tmpl1.getSizes(parm1, parm2); verify_val(parm1, F2_OFFSET_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); verify_val(parm2, F2_LENGTH_SIZE, "FileCreatPropList::getSizes", __LINE__, __FILE__); - unsigned iparm1,iparm2; // file-creation parameters + unsigned iparm1, iparm2; // file-creation parameters tmpl1.getSymk(iparm1, iparm2); verify_val(iparm1, F2_SYM_INTERN_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); verify_val(iparm2, F2_SYM_LEAF_K, "FileCreatPropList::getSymk", __LINE__, __FILE__); @@ -322,13 +327,14 @@ static void test_file_open() // Try truncating the file, and it should fail because the file is // still opened with file2. try { - H5File file3 (FILE2, H5F_ACC_TRUNC); // should throw E + H5File file3(FILE2, H5F_ACC_TRUNC); // should throw E // Should FAIL but didn't, so throw an invalid action exception throw InvalidActionException("H5File constructor", "Attempt truncating an opened file."); } - catch (FileIException& E) // catching H5F_ACC_TRUNC on opened file - {} // do nothing, FAIL expected + catch (FileIException &E) // catching H5F_ACC_TRUNC on opened file + { + } // do nothing, FAIL expected // Now, really close the file. file2.close(); @@ -345,15 +351,13 @@ static void test_file_open() H5File file4(FILE2, H5F_ACC_TRUNC); PASSED(); - } // end of try block + } // end of try block - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_file_open()", __LINE__, __FILE__, E.getCDetailMsg()); } -} // test_file_open() +} // test_file_open() - /*------------------------------------------------------------------------- * Function: test_file_size * @@ -366,7 +370,8 @@ static void test_file_open() * *------------------------------------------------------------------------- */ -static void test_file_size() +static void +test_file_size() { // Output message about test being performed SUBTEST("File Size"); @@ -385,27 +390,28 @@ static void test_file_size() // fapl.setSec2(); // Create a file - H5File file4( FILE4, H5F_ACC_TRUNC, FileCreatPropList::DEFAULT, fapl); + H5File file4(FILE4, H5F_ACC_TRUNC, FileCreatPropList::DEFAULT, fapl); // Get file size hsize_t file_size = file4.getFileSize(); // Check if file size is reasonable. It's supposed to be 2KB now. - if (file_size < 1*KB || file_size > 4*KB) - issue_fail_msg("test_file_size()", __LINE__, __FILE__, "getFileSize() returned unreasonable value"); + if (file_size < 1 * KB || file_size > 4 * KB) + issue_fail_msg("test_file_size()", __LINE__, __FILE__, + "getFileSize() returned unreasonable value"); // Get the amount of free space in the file hssize_t free_space = file4.getFreeSpace(); // Check if it's reasonable. It's 0 now. - if (free_space < 0 || free_space > 4*KB) - issue_fail_msg("test_file_size()", __LINE__, __FILE__, "getFreeSpace returned unreasonable value"); + if (free_space < 0 || free_space > 4 * KB) + issue_fail_msg("test_file_size()", __LINE__, __FILE__, + "getFreeSpace returned unreasonable value"); PASSED(); - } // end of try block + } // end of try block - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_file_size()", __LINE__, __FILE__, E.getCDetailMsg()); } @@ -414,9 +420,8 @@ static void test_file_size() if (ret < 0) issue_fail_msg("test_file_size()", __LINE__, __FILE__, "H5Pclose failed"); -} // test_file_size() +} // test_file_size() - /*------------------------------------------------------------------------- * Function: test_file_name * @@ -429,14 +434,14 @@ static void test_file_size() * *------------------------------------------------------------------------- */ -const int RANK = 2; -const int NX = 4; -const int NY = 5; -const H5std_string GROUPNAME ("group"); -const H5std_string DSETNAME ("dataset"); -const H5std_string DATTRNAME ("dataset attribute"); -const H5std_string FATTRNAME ("file attribute"); -const H5std_string DTYPENAME ("compound"); +const int RANK = 2; +const int NX = 4; +const int NY = 5; +const H5std_string GROUPNAME("group"); +const H5std_string DSETNAME("dataset"); +const H5std_string DATTRNAME("dataset attribute"); +const H5std_string FATTRNAME("file attribute"); +const H5std_string DTYPENAME("compound"); // Compound datatype typedef struct s1_t { @@ -444,7 +449,8 @@ typedef struct s1_t { float b; } s1_t; -static void test_file_name() +static void +test_file_name() { // Output message about test being performed. SUBTEST("File Name"); @@ -466,11 +472,11 @@ static void test_file_name() verify_val(file_name, FILE4, "Group::getFileName", __LINE__, __FILE__); // Create the data space. - hsize_t dims[RANK] = {NX, NY}; + hsize_t dims[RANK] = {NX, NY}; DataSpace space(RANK, dims); // Create a new dataset. - DataSet dataset(file4.createDataSet (DSETNAME, PredType::NATIVE_INT, space)); + DataSet dataset(file4.createDataSet(DSETNAME, PredType::NATIVE_INT, space)); // Get and verify file name via a dataset. file_name = dataset.getFileName(); @@ -484,7 +490,7 @@ static void test_file_name() verify_val(file_name, FILE4, "Attribute::getFileName", __LINE__, __FILE__); // Create a compound datatype. - CompType comp_type (sizeof(s1_t)); + CompType comp_type(sizeof(s1_t)); // Insert fields. comp_type.insertMember("a", HOFFSET(s1_t, a), PredType::NATIVE_INT); @@ -503,15 +509,13 @@ static void test_file_name() verify_val(finfo.sohm.hdr_size, 0, "H5File::getFileInfo", __LINE__, __FILE__); PASSED(); - } // end of try block + } // end of try block - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_file_name()", __LINE__, __FILE__, E.getCDetailMsg()); } -} // test_file_name() +} // test_file_name() - /*------------------------------------------------------------------------- * * Function: test_file_attribute @@ -521,15 +525,16 @@ static void test_file_name() * Return None *------------------------------------------------------------------------- */ -const int RANK1 = 1; -const int ATTR1_DIM1 = 3; -const H5std_string FILE5("tfattrs.h5"); -const H5std_string FATTR1_NAME ("file attribute 1"); -const H5std_string FATTR2_NAME ("file attribute 2"); -int fattr_data[ATTR1_DIM1]={512,-234,98123}; // Test data for file attribute -int dattr_data[ATTR1_DIM1]={256,-123,1000}; // Test data for dataset attribute - -static void test_file_attribute() +const int RANK1 = 1; +const int ATTR1_DIM1 = 3; +const H5std_string FILE5("tfattrs.h5"); +const H5std_string FATTR1_NAME("file attribute 1"); +const H5std_string FATTR2_NAME("file attribute 2"); +int fattr_data[ATTR1_DIM1] = {512, -234, 98123}; // Test data for file attribute +int dattr_data[ATTR1_DIM1] = {256, -123, 1000}; // Test data for dataset attribute + +static void +test_file_attribute() { int rdata[ATTR1_DIM1]; int i; @@ -543,7 +548,7 @@ static void test_file_attribute() H5File file5(FILE5, H5F_ACC_TRUNC); // Create the data space - hsize_t dims[RANK1] = {ATTR1_DIM1}; + hsize_t dims[RANK1] = {ATTR1_DIM1}; DataSpace space(RANK1, dims); // Create two attributes for the file @@ -556,13 +561,15 @@ static void test_file_attribute() // Try to create the same attribute again (should fail) Attribute fattr_dup(file5.createAttribute(FATTR2_NAME, PredType::NATIVE_INT, space)); // Should FAIL but didn't, so throw an invalid action exception - throw InvalidActionException("H5File createAttribute", "Attempted to create an existing attribute."); + throw InvalidActionException("H5File createAttribute", + "Attempted to create an existing attribute."); } - catch (AttributeIException& E) // catch creating existing attribute - {} // do nothing, FAIL expected + catch (AttributeIException &E) // catch creating existing attribute + { + } // do nothing, FAIL expected // Create a new dataset - DataSet dataset(file5.createDataSet (DSETNAME, PredType::NATIVE_INT, space)); + DataSet dataset(file5.createDataSet(DSETNAME, PredType::NATIVE_INT, space)); // Create an attribute for the dataset Attribute dattr(dataset.createAttribute(DATTRNAME, PredType::NATIVE_INT, space)); @@ -588,7 +595,7 @@ static void test_file_attribute() verify_val(num_objs, 0, "H5File::getObjCount(H5F_OBJ_DATATYPE)", __LINE__, __FILE__); num_objs = file5.getObjCount(H5F_OBJ_FILE); verify_val(num_objs, 1, "H5File::getObjCount(H5F_OBJ_FILE)", __LINE__, __FILE__); - + // Get the file name using the attributes H5std_string fname = fattr1.getFileName(); verify_val(fname, FILE5, "H5File::getFileName()", __LINE__, __FILE__); @@ -630,29 +637,27 @@ static void test_file_attribute() if (rdata[i] != dattr_data[i]) { H5_FAILED(); cerr << endl; - cerr << "element [" << i << "] is " << rdata[i] << - "but should have been " << dattr_data[i] << endl; - } + cerr << "element [" << i << "] is " << rdata[i] << "but should have been " << dattr_data[i] + << endl; } + } PASSED(); - } // end of try block + } // end of try block // Catch creating existing attribute - catch (AttributeIException& E) - {} // do nothing, exception expected + catch (AttributeIException &E) { + } // do nothing, exception expected // Catch all other exceptions - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_file_attribute()", __LINE__, __FILE__, E.getCDetailMsg()); } -} // test_file_attribute() +} // test_file_attribute() - -const H5std_string FILE6("tfile5.h5"); -const H5std_string ROOTGROUP("/"); -const H5std_string GROUP1("/G1"); -const H5std_string SUBGROUP3("/G1/G3"); +const H5std_string FILE6("tfile5.h5"); +const H5std_string ROOTGROUP("/"); +const H5std_string GROUP1("/G1"); +const H5std_string SUBGROUP3("/G1/G3"); /*------------------------------------------------------------------------- * Function: test_libver_bounds_real @@ -668,71 +673,70 @@ const H5std_string SUBGROUP3("/G1/G3"); * *------------------------------------------------------------------------- */ -static void test_libver_bounds_real( - H5F_libver_t libver_create, unsigned oh_vers_create, - H5F_libver_t libver_mod, unsigned oh_vers_mod) +static void +test_libver_bounds_real(H5F_libver_t libver_create, unsigned oh_vers_create, H5F_libver_t libver_mod, + unsigned oh_vers_mod) { try { - /* - * Create a new file using the default creation property and access property - * with latest library version. - */ - FileAccPropList fapl; - fapl.setLibverBounds(libver_create, H5F_LIBVER_LATEST); - H5File file(FILE6, H5F_ACC_TRUNC, FileCreatPropList::DEFAULT, fapl); + /* + * Create a new file using the default creation property and access property + * with latest library version. + */ + FileAccPropList fapl; + fapl.setLibverBounds(libver_create, H5F_LIBVER_LATEST); + H5File file(FILE6, H5F_ACC_TRUNC, FileCreatPropList::DEFAULT, fapl); - /* - * Make sure the root group has the correct object header version - */ - unsigned obj_version = file.childObjVersion(ROOTGROUP); - verify_val(obj_version, oh_vers_create, "H5File::childObjVersion", __LINE__, __FILE__); + /* + * Make sure the root group has the correct object header version + */ + unsigned obj_version = file.childObjVersion(ROOTGROUP); + verify_val(obj_version, oh_vers_create, "H5File::childObjVersion", __LINE__, __FILE__); - /* - * Reopen the file and make sure the root group still has the correct version - */ - file.close(); + /* + * Reopen the file and make sure the root group still has the correct version + */ + file.close(); - fapl.setLibverBounds(libver_mod, H5F_LIBVER_LATEST); + fapl.setLibverBounds(libver_mod, H5F_LIBVER_LATEST); - file.openFile(FILE6, H5F_ACC_RDWR, fapl); + file.openFile(FILE6, H5F_ACC_RDWR, fapl); - obj_version = file.childObjVersion(ROOTGROUP); - verify_val(obj_version, oh_vers_create, "H5File::childObjVersion", __LINE__, __FILE__); + obj_version = file.childObjVersion(ROOTGROUP); + verify_val(obj_version, oh_vers_create, "H5File::childObjVersion", __LINE__, __FILE__); - /* - * Create a group named "/G1" in the file, and make sure it has the correct - * object header version - */ - Group group = file.createGroup(GROUP1); + /* + * Create a group named "/G1" in the file, and make sure it has the correct + * object header version + */ + Group group = file.createGroup(GROUP1); - obj_version = group.objVersion(); - verify_val(obj_version, oh_vers_mod, "Group::objVersion", __LINE__, __FILE__); + obj_version = group.objVersion(); + verify_val(obj_version, oh_vers_mod, "Group::objVersion", __LINE__, __FILE__); - group.close(); // close "/G1" + group.close(); // close "/G1" - /* - * Create a group named "/G1/G3" in the file, and make sure it has the - * correct object header version - */ - group = file.createGroup(SUBGROUP3); + /* + * Create a group named "/G1/G3" in the file, and make sure it has the + * correct object header version + */ + group = file.createGroup(SUBGROUP3); - obj_version = group.objVersion(); - verify_val(obj_version, oh_vers_mod, "Group::objVersion", __LINE__, __FILE__); + obj_version = group.objVersion(); + verify_val(obj_version, oh_vers_mod, "Group::objVersion", __LINE__, __FILE__); - group.close(); // close "/G1/G3" + group.close(); // close "/G1/G3" - /* - * Make sure the root group still has the correct object header version - */ - obj_version = file.childObjVersion(ROOTGROUP); - verify_val(obj_version, oh_vers_create, "H5File::childObjVersion", __LINE__, __FILE__); + /* + * Make sure the root group still has the correct object header version + */ + obj_version = file.childObjVersion(ROOTGROUP); + verify_val(obj_version, oh_vers_create, "H5File::childObjVersion", __LINE__, __FILE__); - // Everything should be closed as they go out of scope - } // end of try block + // Everything should be closed as they go out of scope + } // end of try block - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_libver_bounds_real()", __LINE__, __FILE__, E.getCDetailMsg()); } @@ -752,7 +756,8 @@ static void test_libver_bounds_real( * *------------------------------------------------------------------------- */ -static void test_libver_bounds() +static void +test_libver_bounds() { // Output message about test being performed SUBTEST("Setting library version bounds"); @@ -763,7 +768,6 @@ static void test_libver_bounds() PASSED(); } /* end test_libver_bounds() */ - /*------------------------------------------------------------------------- * Function: test_commonfg * @@ -776,7 +780,8 @@ static void test_libver_bounds() * *------------------------------------------------------------------------- */ -static void test_commonfg() +static void +test_commonfg() { // Output message about test being performed SUBTEST("Root group"); @@ -792,11 +797,11 @@ static void test_commonfg() Group group(rootgroup.createGroup(GROUPNAME, 0)); // Create the data space. - hsize_t dims[RANK] = {NX, NY}; + hsize_t dims[RANK] = {NX, NY}; DataSpace space(RANK, dims); // Create a new dataset. - DataSet dataset(group.createDataSet (DSETNAME, PredType::NATIVE_INT, space)); + DataSet dataset(group.createDataSet(DSETNAME, PredType::NATIVE_INT, space)); // Get and verify file name via a dataset. H5std_string file_name = dataset.getFileName(); @@ -817,17 +822,15 @@ static void test_commonfg() verify_val(file_name, FILE4, "Attribute::getFileName", __LINE__, __FILE__); PASSED(); - } // end of try block + } // end of try block - catch (Exception& E) - { + catch (Exception &E) { issue_fail_msg("test_commonfg()", __LINE__, __FILE__, E.getCDetailMsg()); } } /* end test_commonfg() */ - -const H5std_string FILE7("tfile7.h5"); +const H5std_string FILE7("tfile7.h5"); /*------------------------------------------------------------------------- * Function: test_file_info @@ -844,15 +847,13 @@ const H5std_string FILE7("tfile7.h5"); *------------------------------------------------------------------------- */ const hsize_t FSP_SIZE_DEF = 4096; -const hsize_t FSP_SIZE512 = 512; -static void test_file_info() +const hsize_t FSP_SIZE512 = 512; +static void +test_file_info() { // Output message about test being performed SUBTEST("File general information"); - hsize_t out_threshold = 0; // Free space section threshold to get - hbool_t out_persist = FALSE;// Persist free-space read - try { // Create a file using default properties. H5File tempfile(FILE7, H5F_ACC_TRUNC); @@ -883,7 +884,7 @@ static void test_file_info() fcpl.close(); // Get the file's version information. - file7.getFileInfo(finfo); // there's no C test for H5Fget_info + file7.getFileInfo(finfo); // there's no C test for H5Fget_info // Close the file. file7.close(); @@ -895,7 +896,7 @@ static void test_file_info() FileCreatPropList fcpl2 = file7.getCreatePlist(); // Get the file's version information. - file7.getFileInfo(finfo); // there's no C test for H5Fget_info + file7.getFileInfo(finfo); // there's no C test for H5Fget_info // Retrieve the property values & check them. hsize_t userblock = fcpl2.getUserblock(); @@ -915,14 +916,12 @@ static void test_file_info() verify_val(istore_ik, F2_ISTORE, "FileCreatPropList::getIstorek", __LINE__, __FILE__); PASSED(); - } // end of try block - catch (Exception& E) - { + } // end of try block + catch (Exception &E) { issue_fail_msg("test_filespace_info()", __LINE__, __FILE__, E.getCDetailMsg()); } -} /* test_file_info() */ +} /* test_file_info() */ - /*------------------------------------------------------------------------- * Function: test_file * @@ -935,23 +934,22 @@ static void test_file_info() * *------------------------------------------------------------------------- */ -extern "C" -void test_file() +extern "C" void +test_file() { // Output message about test being performed MESSAGE(5, ("Testing File I/O Operations\n")); - test_file_create(); // Test file creation (also creation templates) - test_file_open(); // Test file opening - test_file_size(); // Test file size - test_file_name(); // Test getting file's name - test_file_attribute(); // Test file attribute feature - test_libver_bounds(); // Test format version - test_commonfg(); // Test H5File as a root group - test_file_info(); // Test various file info -} // test_file() - - + test_file_create(); // Test file creation (also creation templates) + test_file_open(); // Test file opening + test_file_size(); // Test file size + test_file_name(); // Test getting file's name + test_file_attribute(); // Test file attribute feature + test_libver_bounds(); // Test format version + test_commonfg(); // Test H5File as a root group + test_file_info(); // Test various file info +} // test_file() + /*------------------------------------------------------------------------- * Function: cleanup_file * @@ -966,7 +964,8 @@ void test_file() #ifdef __cplusplus extern "C" #endif -void cleanup_file() + void + cleanup_file() { HDremove(FILE1.c_str()); HDremove(FILE2.c_str()); @@ -975,4 +974,4 @@ void cleanup_file() HDremove(FILE5.c_str()); HDremove(FILE6.c_str()); HDremove(FILE7.c_str()); -} // cleanup_file +} // cleanup_file |