Commit Graph

96 Commits

Author SHA1 Message Date
Jonathan Kim
170e7e53a5 [svn-r20676] Purpose:
- HDFFV-5928 - GMQS: h5diff problem and improvement on comparsing the same objects

Description:
    Fixed:
    1) adding h5tools_is_obj_same() function to check if two given IDs or paths point to the same object. This function can be very useful for other tools and applications.
    2) using h5tools_is_obj_same() at h5diff() and diff() in h5diff.c. If two paths point to the same object, there is no need to check the details of the object since we know there is no difference. The fix will increase the performance by skipping the content comparison. It also fixed the problem of reporting difference for some cases of comparing the same file, e.g. empty files or files with incomparable objects the same file.

    Test update:
    Updat prvious test cases (171, 172, 530) affected by this fix, so they
    still perfrom originally intended testing without bypassing.

Tested:
 jam (linux32-LE), koala (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), cmake
2011-04-29 12:02:31 -05:00
Raymond Lu
614e46f270 [svn-r20577] Bug 1386 - allowing dimension size to be zero. I added test cases in the tests for h5dump and h5diff. I also added the
test cases in the CMAKE script.

Tested on jam, linew, and amani.  Tested CMAKE on jam.
2011-04-20 15:51:22 -05:00
Jonathan Kim
553e452ce4 [svn-r20384] Purpose:
Fixed Bug 2184 - GMQS: h5diff - incorrect calculation code for 
    --use-system-epsilon option

Description:
    Merged from HDF5 1.8 branch r20369.
    Fixed h5diff for --use-system-epsilon option: the calculation changed
    from ( |a - b| / b ) to ( |a - b| ). This was decided for better 
    performance and was corrected only in HDF5 trunk, so 1.8 got updated.
    Also comments for equal_XXX() function were updated correctly. 
    Also help page and RM got updated correctly.
    Also add test cases for testing the differences w/wo the option.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE), Windows (32-LE)
2011-03-31 16:43:46 -05:00
Jonathan Kim
4147de8d02 [svn-r20294] Purpose:
Fixed CHICAGO: Bug 2121 - h5diff - incorrect and lack of output for the 
    different set of attributes (different number and names)

Description:
    Previously h5diff compared attributes correctly only when two objects have 
    the same number of attributes and attribute names are identical.
    This fix covers all other cases.
    Also didn't display useful information about attribute difference.
    This fixes both issues.

     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2011-03-22 10:47:07 -05:00
Jonathan Kim
562ba69f35 [svn-r19892] Purpose:
Bug 2089 - GMQS: h5diff segfault on a compound dataset with fixed length + 
    vlen string type order

Description:
    This is fix for the segfault when h5diff compares a compound dataset with 
    combination of fixed length string types and vlen string types in certain 
    orders. Optimized vlariable length string handling codes. The fix is 
    referred from h5dump handling vlen strings. 
    For testing, several compound datasets were added with various combinations.
    Previous failed cases:
     - Vlen string, Fixed length string, Vlen string, Fixed length string
     - Fixed length string, Fixed length string, Vlen string, Vlen string
     - Fixed length string, Vlen string, Fixed length string, Vlen string
     
Tested:
 jam (linux32-LE), amani (linux64-LE), heiwa (linuxppc64-BE), tejeda (mac32-LE), linew (solaris-BE)
2010-12-28 13:08:40 -05:00
Albert Cheng
5263086fe1 [svn-r19850] Problem: AIX prints some error messages when MPI_Abort is called. That caused
the output matching some problems.

Solution: Add stderr filtering for AIX ERROR: messages.

Tested: NCSA BP.
2010-11-26 10:59:53 -05:00
Allen Byrne
342ce6b589 [svn-r19509] Improve CMake support for CYGWIN.
Correct script comment in testh5diff.sh

Tested: Windows Cygwin
2010-10-04 16:36:27 -05:00
Jonathan Kim
04a7315138 [svn-r19443] Purpose:
Fix for group comparison with exclude-path case. Use relative path.

Description:
 Related to "1890:  h5diff excluding object for file comparison via command line" checkins. (r19406)

Tested:
 jam, amani and heiwa
2010-09-20 17:11:50 -05:00
Jonathan Kim
a436e41203 [svn-r19409] Purpose:
Add extra test cases for bug1975 h5diff - support recursive comparison on group when specified as an object.

Description:
 Additional tests for combination of group recursive and --follow-symlinks 
 with multi-linked external links with several files (same name/strucure).

Tested:
 jam, amani, heiwa
2010-09-16 18:58:35 -05:00
Jonathan Kim
eb7b5b2cef [svn-r19406] Purpose:
Add --exclude-path option

Description:
 Specified path to an object will be excluded from comparing the two files or two groups. If group is specified all the member objects will be excluded.
 Related to "1890:  h5diff excluding object for file comparison via command line"

Tested:
 jam, amani and heiwa
2010-09-16 16:46:16 -05:00
Jonathan Kim
c561dc7183 [svn-r19400] Purpose:
Fix for Bug1975 h5diff - support recursive comparison on group when specified as an object

Description:
 Compare member objects and groups recursively when two files or groups are specified to be compared. Support parallel diff and handling symbolic links accordingly.

Tested:
 jam, amani, heiwa
2010-09-16 12:48:06 -05:00
Albert Cheng
ed9a9f8c50 [svn-r18985] Test feature: (bugs 1919)
Problem: some launching command like yod (and sometimes mpirun), do not pass
back the exit code of the executables back to the shell. It always returns 0
if it can launch the executable. This cause tests that expect non-zero exit
code to fail incorrectly.

Short term Solution:
Added the feature that if $RUNSERIAL_NOEXITCODE is defined, do not
test conditions that rely on non-zero exit code.

Tests:
dove-linux using RUNSERIAL=thgyod to see the failures and using
$RUNSERIAL_NOEXITCODE=yes to bypass the errors.
Also h5committested.
2010-06-08 13:22:11 -05:00
Jonathan Kim
a5ca9e6ba9 [svn-r18873] Purpose:
Rename '--follow-links' to '--follow-symlinks' 

Description:
    The '--follow-links' option is to follow symbolic links (soft and external).
    Make the name more intuitive and specific to the feature.

Tested:
    jam, amani and linew
2010-05-21 15:12:22 -05:00
Jonathan Kim
ee757e449b [svn-r18273] Purpose:
bugzilla 1754: h5diff: support comparing through links.

Description:
    Fix incorrect (or hanging) behavior in parallel mode when specifying 
    invalid combination of command options. 
    (ex: -v and -q , --no-dangling-links without --follow-links)
    Add relate test case
    Update h5diffgentest.c due to add test files this and previous time

Note:
    svn #18266 (prior to this)
    svn #18164 (original check-in)

Tested:
    h5committest (jam, amani and linew)
2010-02-18 11:51:12 -05:00
Jonathan Kim
ad9e876b0c [svn-r18266] Purpose:
bugzilla 1754: h5diff: support comparing through links.
    (original check-in svn revision #18164)
Description:
    fix the hang issue in parallel mode when compare external-link.
    add --no-dangling-links option. 
    add test cases (#450-#459) relate to the new option.
    improve test script to check exit code.
    update --help relate to the new options.
    correct some indentations.

Tested:
    h5committest (jam, amani and linew)
2010-02-16 14:43:05 -05:00
Jonathan Kim
0b761d78c7 [svn-r18170] Skipped 3 test cases for parallel mode which caused hang.
They are external-link test cases with following link option.
The related code was checked in as svn #18164 and #18165 to support follwing
links for h5diff.
The test cases will be added back when find solution for parallel mode.

Tested on Jam
2010-01-26 18:39:42 -05:00
Jonathan Kim
985a261886 [svn-r18165] Purpose:
Add test cases for h5diff check-in (svn revision #18164).

Description:
    This test cases are for testing comparing through various link combinations
    relate to bugzilla report 1754.
    Also improved the test script to handle external link cases and
    simplified to use single line instead of double for each test cases. 

Tested on Jam
2010-01-25 17:02:35 -05:00
Jonathan Kim
7ce1b99a7c [svn-r18129] Purpose:
Add test case relate to bug1749. Also corrected command echo lines which
    don't match with actual tests.

Tested on Jam.
2010-01-21 13:42:30 -05:00
Albert Cheng
f40a245ce2 [svn-r18055] Bug fix: 1192
Description:
Fixed exit code (sometimes return code in Main) to follow the HDF5 standards.

Tested:
H5committested plus serial test in Jam.
2009-12-26 03:36:37 -05:00
Albert Cheng
8d8f365711 [svn-r17606] Code Cleanup:
TFLOPS machine has retired long ago. Removed all code specific for its
support.

Test:
h5committested.
2009-10-07 00:08:05 -05:00
Albert Cheng
ccffe74623 [svn-r17603] Bug fix:
The ph5diff tests printout incorrectly reporting they are running
h5diff when it actually is running ph5diff.
Fixed.

Tested: Jam (parallel), linew (serial)
No H5committest since it is a shell script and Jam tests both
serial and parallel h5diff for Linux while Linew tests Big
endian platform.
2009-10-06 17:36:07 -05:00
Peter Cao
5f3a7254c1 [svn-r17466] " Use strict equality as default
"   Use "--use-system-epsilon" for system EPSILON
"   Use "-p" or "-d" for whatever user's choice of epsilon
"   Use "-p 0" or "-d 0" for strict equality (same as default)
2009-09-11 15:09:34 -05:00
Peter Cao
a6676de3c8 [svn-r17254] Fixed Bug 1563 - h5diff and Infinity
Added test cases
2009-07-28 14:40:18 -05:00
Larry Knox
b417362702 [svn-r17081] Disable hanging invalid files test. 2009-06-18 10:28:40 -05:00
Pedro Vicente Nunes
96a0892ba8 [svn-r16461] Bug fix: for compound types, the not comparable test for members was not done
Solution: for compound types, recursively apply that check
Two new cases are added
1) the compound type has a different number of members. Message printed is
<obj1> has X members <obj2> has Y members
Where X and Y are the number of members of each compound type being compared
2) the compound type has not comparable types (for example a double and an int at the same index)
In this case the message
Comparison not possible: object1 is of class1 and object2 is of class2
Is replaced with
Comparison not possible: object1 has a  class1 and object2 has a  class2
Modified the test generator program to have these 2  cases
Added a shell run for these 2  cases


Tested: windows, h5committest
2009-02-11 10:57:25 -05:00
Pedro Vicente Nunes
120350c395 [svn-r16348] #1368 (E1) h5diff: implement "not comparable" messages. Implemented RFC. The new option is <-c, --compare List objects that are not comparable>
added some test cases

tested: windows, linux
2009-01-26 14:29:22 -05:00
Albert Cheng
22228e6f65 [svn-r16333] Bug 948 followup.
Moved a comment up to a more appropriate spot.
No execution change.

Tested: jam pp.
2009-01-19 22:41:21 -05:00
Albert Cheng
0c4e71d004 [svn-r16328] Bug 948.
The test "h5diff -v h5diff_hyper1.h5 h5diff_hyper2.h5" sometimes hangs in THG
machines. Skip it until its hanging is resolved.
2009-01-18 03:09:03 -05:00
Pedro Vicente Nunes
e636e152ea [svn-r15987] Merge with 1.8 rev 15871
Eliminate -c option and make that behavior the default and return 2 instead of -1 on error status

tested: linux
2008-10-29 14:29:25 -05:00
Pedro Vicente Nunes
b7dc9a06b3 [svn-r15977] merge rev 15866 from 1.8 branch into trunk (diffs for unsigned long long)
tested: windows, linux
2008-10-28 14:13:42 -05:00
Pedro Vicente Nunes
6787ef71a2 [svn-r15428] http://bugzilla.hdfgroup.uiuc.edu/show_bug.cgi?id=1170
Summary: when using h5diff to compare the results of h5repack (or other tools that copy one HDF5 file to another), a new option is needed to allow h5diff to make an "absolute" comparison of the 2 files. This is the "contents" mode explained in the usage below.

If this mode is present, objects in both files must match (must be exactly the same). If this does not happen, the tool returns an error code of 1 (instead of the success code of 0)

Changes to the h5repack test script: the call to h5diff was changed to include -c (maintaining the previous -q). 

tested: windows, linux, solaris
2008-08-04 16:13:16 -05:00
Pedro Vicente Nunes
096b0127bc [svn-r15246] Changed the shell script to avoid doing a cd $srcdir
The name of the files are now given by its full name relative to $srcdir

To avoid the printing of the complete full path of the test file, that hides
all the other parameters for long paths, the printing of the command line 
is done first in TESTING with the name only of the test file, not its full path 

the printing in the expected output that had the file name was removed as well as 3 tests that tested error messages in which the file name was present

tested: linux (in 2 different build directories relative to $srcdir), solaris
2008-06-19 21:05:11 -05:00
Pedro Vicente Nunes
83ddc834f4 [svn-r15238]
Moved all h5diff testfiles from /tools/testfiles to tools/h5diff/testfiles

Tested: linux, solaris
2008-06-19 10:34:12 -05:00
Pedro Vicente Nunes
39f23efa17 [svn-r14273] new feature: added some long options to the tests
tested: linux
2007-11-20 11:07:40 -05:00
Pedro Vicente Nunes
1a3c5f6aeb [svn-r14258] new feature: make h5diff use the same command line parsing code and syntax than h5dump
usage is now 
h5diff  [OPTIONS]  file1 file2  [obj1[obj2]]

tested: windows, linux, solaris
2007-11-13 16:40:23 -05:00
Pedro Vicente Nunes
a1fcb56d78 [svn-r14051]
Make the compare to itself file test be another due to the recently introduced file with Nans

Tested: linux, solaris
2007-08-07 16:47:29 -05:00
Scott Wegner
4965da5a72 [svn-r13894] Description:
On Windows, Mingw interprets all parameters starting with '/' as paths, and replaces the '/' with its home directory, "C:\Windows\msys\".  This was a problem in h5diff tests such as:
        h5diff h5diff_101.txt $FILE1 $FILE1 /g1/d1  g1/d2  -v

I've removed the leading '/', as h5diff will interpret it the same either way.

Tested:
kagiso, linew, and smirom, via h5committest
mingw on Windows XP
2007-06-20 13:34:11 -05:00
Pedro Vicente Nunes
a9d32e4896 [svn-r13431]
Bug fix: the macro used for percentage in the unsigned types needed a cast to signed (the difference can be negative)

Unlike the 1.6 branch the unsigned long long conversion to float is supported by H5Tconvert , so the test commented for 1.6 is run (tools/testfiles/h5diff_16_2.txt)
2007-02-28 10:07:13 -05:00
Pedro Vicente Nunes
9dcbb7557d [svn-r13417]
commented a test that fails cross platforms and renamed files
2007-02-27 11:34:56 -05:00
Pedro Vicente Nunes
09d9c02cad [svn-r13404]
renamed files for more easy browsing
2007-02-26 16:56:29 -05:00
Pedro Vicente Nunes
85a0ca17bf [svn-r13401]
clean comments
2007-02-26 16:24:10 -05:00
Pedro Vicente Nunes
2f943aacd6 [svn-r13400]
Revision of the percent tests to have all the same data
2007-02-26 16:22:08 -05:00
Albert Cheng
84fa11d2c7 [svn-r13261] Updated copyright notices.
Tested: visual inspection as they are all just comments.
2007-02-07 14:56:21 -05:00
Pedro Vicente Nunes
124ef64faf [svn-r12984]
Added a relative error formula to deal with floating point uncertainty
in the comparison of floats and double types. 
Added new tests for this feature to the file generator program and to
the shell script
2006-11-27 15:10:53 -05:00
Pedro Vicente Nunes
469f6d30b1 [svn-r12819]
h5diff: print a message of "not comparable" in a case where the relative error
compare is not possible, due to the denominator being zero.  Modified
the test file generator program to include a example for this and a new
test on the shell script
2006-10-26 12:48:36 -05:00
Pedro Vicente Nunes
9d94440384 [svn-r12815]
1) added a new parameter to the h5diff function diff_array that contains
the beginning position of the hyperslab, so that the total position in
the array is printed correctly when reading by hyperslabs.
2) added a new test to h5diff  that reads and diffs by hyperslabs. The
test reads a 1GB dataset, from which a 1KB hyperslab was written with
differences .
3) added the generation of 2 files to the generator program to test the
h5diff hyperslab read.
4) changed the h5diff binary pre-generated file names to be more
descriptive (e.g, instead of file1.h5, made it h5diff_basic1.h5)
5) changed the name of the h5repack options text file to info.h5repack
2006-10-25 15:38:28 -05:00
Pedro Vicente Nunes
50c9a23725 [svn-r12297] Purpose:
new feature

Description:
added support for the printout of dataset region references differences
added a new test for this
merged the h5diff generator of test files into a single file

Solution:

Platforms tested:
linux 32, 64
solaris

Misc. update:
2006-04-25 13:19:40 -05:00
Pedro Vicente Nunes
61b46d4b54 [svn-r12146] Purpose:
bug fix

Description:
percent relative error was done using integer arythmetic; use floating point instead
added the case for unsigned long long integer to float conversion

Solution:

Platforms tested:
linux (32,64)
AIX
solaris

Misc. update:
2006-03-23 14:27:17 -05:00
Pedro Vicente Nunes
b269dbf0ae [svn-r12134] Purpose:
bug fix

Description:
1) added a more explainative usage message
2) the percent relative error for the integer type (division) was being done using integer arythmetic; use floating point arythmetic instead
3) added a new test for integer percent

Solution:

Platforms tested:
linux (32,64)
AIX
solaris

Misc. update:
2006-03-22 15:53:05 -05:00
Pedro Vicente Nunes
ddf2b95cbd [svn-r12112] Purpose:
bug fixes

Description:
1) the option logic for the print of long types was done incorrectly (extra lines of code that were not supposed to be there)
2) the print of loong long types was incorrect

Solution:
1) removed the incorrect code
2) made a long long cast on the printf call

Platforms tested:
linux (32 and 64)
solaris

Misc. update:
2006-03-17 09:43:28 -05:00