summaryrefslogtreecommitdiffstats
path: root/test/API/tools/README
blob: bafa84a3119d54e0ba9cad5d0b06e4725b502d59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
HDF5 VOL-independent tools tests

This directory includes a set of test scripts that will exercise the HDF5
command-line tools which do not require the native VOL connector. For all tests
to pass, you'll need a VOL connector that implements most of the data model
functionality (but not the native-specific API calls). If your connector only
implements a subset of the functionality, many tests will fail.

The test scripts are modified versions of a subset of the tools test scripts
found in the HDF5 library.

These are not well integrated into the testing framework yet and will require
some manual work to run.

1) Build the code in this repository.

2) Make sure the h5delete tool is in your path.

3) Make sure that the HDF5 tools are on your path.

    NOTE: The tools tests require the tools to accept the VOL-related
          command-line parameters, which is an unreleased feature. This
          means that the tools MUST be built from the develop branch of the
          HDF5 library (or 1.12.1 when it's released).

    ALSO NOTE: You'll need the shared tools. The statically linked tools
               cannot load VOL connector plugins. The tests use the "simple"
               names, though (e.g., h5dump, not h5dump-shared), so you
               might need to build HDF5 with the "shared only" option,
               create aliases, or rename things in the script.

4) Set the HDF5_VOL_CONNECTOR environment variable.

    e.g.: export HDF5_VOL_CONNECTOR="pass_through under_vol=0;under_info={}"

5) Make sure the HDF5_PLUGIN_PATH environment variable is set to the location
   of your VOL connector.

6) Run the master test script
    sh runtests.sh

   You will see a lot of error messages and and FAILED text for anything that
   fails.

   You can also run the individual tool test scripts (testh5ls.sh, etc.).