summaryrefslogtreecommitdiffstats
path: root/c++/test/tattr.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r28138] Add first support for _Bool and make hbool_t a "real" _Bool if ↵Jerome Soumagne2015-10-201-1/+1
| | | | | | | | | | | | | | available Fix tests accordingly and fix misuse of hbool_t in various places Fix initialization of H5Pgcpl/ocpl structs in property decoding routines Tested on: Linux/32 (jam) Linux/64 (platypus) Linux/PPC64 (ostrich) MacOSX/64 10.11
* [svn-r27961] Purpose: Partial fix of issues HDFFV-9169 and HDFFV-9167Binh-Minh Ribler2015-10-061-19/+266
| | | | | | | | | | | | | | | | | | | | | | Description: Added wrappers for H5P[s/g]et_attr_phase_change and H5P[s/g]et_attr_creation_order // Sets attribute storage phase change thresholds. void setAttrPhaseChange(unsigned max_compact = 8, unsigned min_dense = 6) // Gets attribute storage phase change thresholds. void getAttrPhaseChange(unsigned& max_compact, unsigned& min_dense) // Sets tracking and indexing of attribute creation order. void setAttrCrtOrder(unsigned crt_order_flags) // Gets tracking and indexing settings for attribute creation order. unsigned getAttrCrtOrder() Platforms tested: Linux/32 2.6 (jam) Linux/64 (platypus) Darwin (osx1010test)
* [svn-r26655] Purpose: Fixed HDFFV-7947Binh-Minh Ribler2015-03-301-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | Description: When copy constructor or constructor that takes an existing id is invoked, the C ref counter stays the same but there is an extra C++ object which later is destroyed and may cause the HDF5 id to be closed prematurely. The C++ library needs to increment the ref counter in these situations, so that the C library will not close the id when it is still being referenced. However, the incrementing of ref count left some objects opened at the end of the program, perhaps, due to compiler's optimization on cons/destructors. The constructor, that takes an existing id, needs to increment the counter but it seems that the matching destructor wasn't invoked. The workaround is to have a function for each class that has "id" that only sets the id and not increment the ref count for the library to use in these situations. These functions are "friend" and not public. The friend functions are: void f_Attribute_setId(Attribute *, hid_t) void f_DataSet_setId(DataSet *, hid_t) void f_DataSpace_setId(DataSpace *, hid_t) void f_DataType_setId(DataType *, hid_t) Platforms tested: Linux/64 (platypus) Linux/32 2.6 (jam gnu and Intel 15.0) SunOS 5.11 (emu)
* [svn-r26458] Purpose: Fix warnings HDFFV-8658Binh-Minh Ribler2015-03-151-26/+26
| | | | | | | | | Description: Fixed many type conversion warnings and unused variables. Platforms tested: Linux/64 (platypus) Linux/32 2.6 (jam) SunOS 5.11 (emu)
* [svn-r25061] Description:Binh-Minh Ribler2014-04-171-12/+24
| | | | | | | | | | | Put back overloaded functions for backward compatibility: - were replaced by better prototyped versions, such as Attribute::getName. - were modified to add const to constant arguments. Added notes for future removal in documentation. Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) SunOS 5.11 (emu)
* [svn-r24994] Purpose: Removed some warningsBinh-Minh Ribler2014-04-091-3/+6
| | | | | | | | | Description: Turned on warnings and removed some of those. Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) SunOS 5.11 (emu)
* [svn-r24969] Description:Binh-Minh Ribler2014-04-061-1/+7
| | | | | | | | | | | | | | - Added wrappers to H5Object for H5Iget_name() to get object's name ssize_t getObjName(char *obj_name, size_t buf_size = 0) const; ssize_t getObjName(H5std_string& obj_name, size_t len = 0) const; H5std_string getObjName() const; - Added tests tobject.cpp - Added to various cleanup_* functions in tests to remove generated files - Added an overload H5I_type_t getHDFObjType() to get object's type Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) SunOS 5.11 (emu) with gmake
* [svn-r24938] Description:Binh-Minh Ribler2014-04-011-0/+118
| | | | | | | | | | | | | | | | | | | - Overloaded Atribute::getName to take a char* for the attribute name: ssize_t Attribute::getName(char* attr_name, size_t buf_size) - Switched the arguments in this function: ssize_t getName(size_t buf_size, H5std_string& attr_name) so it became: ssize_t getName(H5std_string& attr_name, size_t buf_size) The second argument is default to 0, and can be skipped. - Removed this function: H5std_string getName(size_t buf_size); it'll collide with the first function when that function takes a NULL for the first argument, and uses default value for the second argument. - Added more tests Platforms tested: Linux/ppc64 (ostrich) Linux/32 2.6 (jam) SunOS 5.11 (emu)
* [svn-r23438] Purpose: Fix bug HDFFV-7520Binh-Minh Ribler2013-03-231-4/+72
| | | | | | | | | Description: Added wrappers for H5Aexists. Platforms Tested: Linux/32 2.6 (jam) Linux/64 2.6 (koala) Linux/ppc64 (ostrich)
* [svn-r23427] Purpose: Fix bug HDFFV-8067Binh-Minh Ribler2013-03-221-2/+0
| | | | | | | | | | | | | | | | | | | | | | Description: + The C++ test failed with the new PGI compilers versions 12.4 and 12.5 + An exception thrown by an internal function, which was called by a constructor, was not propagating to the test program during the stack unwinding, so it couldn't be caught by the test and the program terminated. + Various trials and errors indicated that the problem is where an STD string converted to a char* being passed to the internal function, but confirmation has not been found yet. It could be a compiler bug. Solution: + Added a try/catch in the constructor around the internal function and re-throw the exception when it is caught. This is a workaround. + Unrelated minor fixes: removed unused variables and MESSAGE's; commented out tvlstr.cpp/test_read_vl_string_attribute because it may be redundant, and commented out H5Tpkg.h inclusion because TEST_ALIGNMENT is not added yet and probably not necessary in the C++ API. Platforms tested: Linux/32 2.6 (jam) with PGI compilers Linux/32 2.6 (jam) with GNU compilers Linux/64 2.6 (koala)
* [svn-r22877] Description:Binh-Minh Ribler2012-10-101-1/+1
| | | | | | Changed uint to unsigned so that no hdf5-specific header file is needed. Platform tested: Linux/32 2.6 (jam) - very minor
* [svn-r22836] Purpose: Fix bug HDFFV-533 and add other missing functionsBinh-Minh Ribler2012-09-271-39/+96
| | | | | | | | | | | | | | | | | | | | | | Description: In this bug, H5File doesn't have the ability to create attribute. The following changes will provide that functionality and several others that were also missing: - Added an abstract class H5Location in between IdComponent and H5Object. - New class structure of IdComponent, H5Location, H5Object, H5File IdComponent | H5Location / \ H5Object H5File - Wrappers in H5Object were moved to H5Location because the related C functions take either file, group, dataset, or named datatype ID. - Added wrapper for H5Rget_obj_type2 - Added tests for file attributes and H5Rget_obj_type2 wrapper Platforms tested: Linux/32 2.6 (jam) Linux/64 2.6 (koala) SunOS 5.10 (linew)
* [svn-r18335] Description:Binh-Minh Ribler2010-02-261-13/+13
| | | | | | | | | | Removed header file testhdf5.h from C++ tests to eliminate a non-standard problem on OpenVMS. It wasn't essential. Platforms tested: Linux/32 2.6 (jam) FreeBSD/64 6.3 (liberty) Ray agreed to test on OpenVMS.
* [svn-r16816] Description:Binh-Minh Ribler2009-04-211-1/+11
| | | | | | | | | | | | | | Added member function Attribute::getInMemDataSize(), which is a wrapper of several C calls, to simplify getting the attribute's data size in memory. Used this new function in Attribute::read to get the fixed-len string attribute data. Added tests to tattr.cpp. Platforms tested: Linux/32 2.6 (jam) FreeBSD/64 6.3 (liberty) SunOS 5.10 (linew)
* [svn-r16787] Description:Binh-Minh Ribler2009-04-191-9/+69
| | | | | | | | | | | | | Fixed to pass parameters to H5Awrite/H5Aread correctly so that all Attribute::write and Attribute::read methods work correctly for both fixed-length and variable-length string attributes. Added more test cases. Platforms tested: Linux/32 2.6 (jam) FreeBSD/64 6.3 (liberty) SunOS 5.10 (linew)
* [svn-r15825] Description:Quincey Koziol2008-10-091-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Fix various problems with a the core & sec2 VFDs. Improve the h5_get_file_size() routine to handle files created with VFDs that use multiple files. Tested on: Mac OS X/32 10.5.5 (amazon) in debug mode Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe, in production mode FreeBSD/32 6.3 (duty) in debug mode FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe, in debug mode Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x, w/C++ & FORTRAN, in production mode Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN, w/szip filter, in production mode Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN, in production mode Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
* [svn-r15628] Description:Quincey Koziol2008-09-161-1/+1
| | | | | | | | | | | | | Remove trailing whitespace from C/C++ source files, with the following script: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Tested on: Mac OS X/32 10.5.5 (amazon) No need for h5committest, just whitespace changes...
* [svn-r15395] When an attribute was opened twice and data was written with ↵Raymond Lu2008-07-221-13/+14
| | | | | | | | | | | one of the handles, the file didn't have the data. It happened because each handle had its own object structure, and the empty one overwrote the data with fill value. This is fixed by making some attribute information like the data be shared in the attribute structure. Tested on smirom, kagiso, and linew.
* [svn-r14144] Description:Quincey Koziol2007-09-131-0/+16
| | | | | | | | | | | | | | | | Move H5Gget_objinfo() to deprecated symbols section and retarget internal usage to H5Lget_info()/H5Oget_info(). Misc. other code cleanups... Tested on: FreeBSD/32 6.2 (duty) FreeBSD/64 6.2 (liberty) Linux/32 2.6 (kagiso) Linux/64 2.6 (smirom) AIX/32 5.3 (copper) Solaris/32 2.10 (linew) Mac OS X/32 10.4.10 (amazon)
* [svn-r13954] Purpose: Fix testBinh-Minh Ribler2007-07-081-0/+8
| | | | | | | | | | | | | | | | | Description: Compilers don't destroy temporary objects at the same time, some do immediately after use, some delay until the end of the scope. The delay makes it difficult to test the reference count functionality. Solution: Enclosed the operations on objects and check reference count after getting out of the enclosed block. This only works for the test! I'm assuming that checking reference count is just for the library to test that functionality; the user will not need to do that. :-/ Platforms tested: SunOS 5.10 (linew) Linux 2.6 (kagiso)
* [svn-r13524] Purpose: Cleanup testsBinh-Minh Ribler2007-03-171-73/+82
| | | | | | | | | | | Description: Added extern "C" to cleanup functions as well, forgot last time. Cleaned up/Added comments to some of the newly added tests. Platforms tested AIX 5.1 (copper) Linux 2.6 (kagiso) SunOS 5.8 64-bit (sol)
* [svn-r13474] Purpose: Fixed bugsBinh-Minh Ribler2007-03-081-2/+4
| | | | | | | | | | | | | | | | | Description: VMS revealed a problem in calling C++ test functions from C AddTest. Solution: Per Quincey's suggestion, added #ifdef __cplusplus extern "C" #endif to the called C++ functions. Platforms tested AIX 5.1 (copper) Linux 2.6 (kagiso) On pending: waiting for Elena to test on VMS when she comes back.
* [svn-r13253] Updated all C and C++ style source code files with the THG ↵Albert Cheng2007-02-071-2/+3
| | | | | | | | | copyright notice. Tested platform: Kagiso only since it is only a comment block change. If it works in one machine, it should work in all, I hope. Still need to check the parallel build on copper.
* [svn-r13093] Purpose: Adding testBinh-Minh Ribler2007-01-021-1/+1
| | | | | | | | | | Description: Added variable-length string tests. Platforms tested AIX 5.1 (copper) SunOS 5.8 64-bit (sol) Linux 2.6 (kagiso)
* [svn-r13082] Purpose: Code cleanupBinh-Minh Ribler2006-12-201-2/+2
| | | | | | | | | Description: Changed from hsize_t to int for rank constants to fix errors on Windows. Platform tested: Linux 2.6 (kagiso) Visual 6.0 on Windows XP
* [svn-r13050] Purpose: Code cleanupBinh-Minh Ribler2006-12-121-15/+15
| | | | | | | | | | Description: Fixed several mismatched types causing daily test to fail on tg-login. Platforms tested: Linux 2.6 (kagiso) - just to make sure no ill effects. I cannot login to tg-login3 so am going to watch for it on daily test tonight.
* [svn-r13039] Purpose: Add testBinh-Minh Ribler2006-12-111-0/+55
| | | | | | | | | | Description: Added test_string_attr to partially test recent fix of Attribute::read. Platforms tested: AIX 5.1 (copper) Linux 2.6 (kagiso) SunOS 5.8 64-bit (sol)
* [svn-r12751] Purpose:Albert Cheng2006-10-121-1/+1
| | | | | | | | | | | | | | | | Bug fix (related to 544) Description: h5_get_file_size() was coded to return 0 if failed but file size can be 0. Changed the failure return value to -1 which is allowed by the returned type of off_t which is a signed type. Also changed the checking code of the stat call to just == 0 since that is how it is defined. Test: Could test it in heping only. Both Sol and Copper failed to compiled due to error in the Direct IO VFD code.
* [svn-r12440] Purpose:Quincey Koziol2006-06-271-1/+1
| | | | | | | | | | | Code cleanup Description: Trim trailing whitespace in Makefile.am and C/C++ source files to make diffing changes easier. Platforms tested: None necessary, whitespace only change
* [svn-r12369] Purpose: Fixed bugBinh-Minh Ribler2006-05-231-5/+5
| | | | | | | | | | | | | | | | | Description: Shanti compiler destroy unnamed objects later than others, which caused some reference counting test fail. Revised the test so that destructors are called at the same time, regardless the differences of compiler implementation. Revised some constructors, close, operator=, and destructors to make sure that all the object ids are handled properly. Platforms tested: Linux 2.4 (heping) SunOS 5.9 (shanti) HPUX 11.00 (kelgia) AIX 5.1 (copper)
* [svn-r12296] Purpose: MaintenanceBinh-Minh Ribler2006-04-251-32/+32
| | | | | | | | | | | Description: dsets.cpp: added a missing PASSED call to line up output better. tattr.cpp: casted parameters to verify_val properly to fix compilation errors on Windows, introduced from the previous checkin. Platforms tested: Linux 2.4 (heping) - very minor Windows XP
* [svn-r12286] Purpose: Fix bugBinh-Minh Ribler2006-04-201-2/+2
| | | | | | | | | | | | | | | | | Description: The file size test in C++ library failed on Copper because the value returned by h5_get_file_size was intepreted incorrectly due to different interger sizes. Solution: H5private.h: Added check to use stat64 and off64_t where appropriate. h5test.c and h5test.h: used h5_stat_size_t in place of off_t. tattr.cpp: used h5_stat_size_t in place of off_t. Platforms tested: Linux 2.4 (heping) AIX 5.1 (copper) SunOS 5.8 64-bit (sol) - still on going
* [svn-r12254] Purpose:Quincey Koziol2006-04-141-7/+7
| | | | | | | | | | | | | | Anti-feature Description: Revert changes to H5G_stat_t struct, to make it compatible with the 1.6.x branch again. The information that was added to the H5G_stat_t struct will be reported through other API routines. Platforms tested: FreeBSD 4.11 (sleipnir) w/C++ Linux 2.4/64 (mir) w/C++ & Fortran Solaris 2.9 (shanti)
* [svn-r12202] Purpose: MaintenanceBinh-Minh Ribler2006-04-051-23/+22
| | | | | | | | | | | | Description: Changed to alias string instead of std, i.e. H5std_string instead of H5std, because the old way wasn't working when std didn't exist. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) HPUX 11.00 (kelgia) - this was the problematic platform but I wasn't able to test before.
* [svn-r12180] Purpose: MaintenanceBinh-Minh Ribler2006-03-301-3/+4
| | | | | | | | | | | Description: Added alias H5_std so either the global or std namespace can be used, depending on H5_NO_STD. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) AIX 5.1 (copper)
* [svn-r11771] Purpose:Quincey Koziol2005-12-081-1/+0
| | | | | | | | | | | | Code cleanup Description: Fix a bunch of warnings flagged by Windows compilers. Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11763] Purpose: Adding testsBinh-Minh Ribler2005-12-051-17/+154
| | | | | | | | | | Description: Added tests for openFile and new getObjinfo. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) HPUX 11.00 (kelgia)
* [svn-r11756] Purpose: Test improvementBinh-Minh Ribler2005-12-031-2/+7
| | | | | | | | | | Description: Improved the use of std members. Platforms tested: Linux 2.4 (heping) SunOS 5.8 64-bit (sol) Linux 2.4 w/PGI (colonelk)
* [svn-r11487] Purpose:Quincey Koziol2005-10-011-12/+12
| | | | | | | | | | | Code cleanup Description: Tweak copyright on C++ source files to reduce whining by copyright checking script. Platforms tested: FreeBSD 4.11 (sleipnir) w/C++
* [svn-r11245] Purpose:Quincey Koziol2005-08-131-60/+60
| | | | | | | | | | | | | | | | | | | | Code cleanup Description: Trim trailing whitespace, which is making 'diff'ing the two branches difficult. Solution: Ran this script in each directory: foreach f (*.[ch] *.cpp) sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f end Platforms tested: FreeBSD 4.11 (sleipnir) Too minor to require h5committest
* [svn-r11152] Purpose: Removed some compiler warningsBinh-Minh Ribler2005-07-251-4/+1
| | | | | | | | | | Description: Removed defined but unused variables. Platforms tested: Linux 2.4 (heping) IRIX64 with -n32 (modi4) Linux 2.4 w/PGI (colonelk)
* [svn-r10245] Purpose: Cleanup testBinh-Minh Ribler2005-03-211-30/+23
| | | | | | | | | | Description: Used C++ PredType instead of the C types to avoid unresolved symbol errors on Windows. Platforms tested: Windows XP Linux 2.4 (heping)
* [svn-r10243] Purpose: Minor bug fixBinh-Minh Ribler2005-03-201-3/+5
| | | | | | | | Description: Removed a redefinition of a variable. Platforms: Linux 2.4 (heping) - very minor
* [svn-r10240] Purpose: Adding more tests to C++ APIBinh-Minh Ribler2005-03-201-0/+1059
Description: Added C++ tests for attribute functionality, tattr.cpp. Platforms tested: Linux 2.4 (heping) AIX 5.1 (copper)