Skip to content

Commit 077ae65

Browse files
hahnjoenirolf
andauthored
Extend documentation on organization and how to run (#42)
Co-authored-by: Florine de Geus <[email protected]>
1 parent 9985395 commit 077ae65

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

README.md

+18
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,14 @@ Eventually, we will also provide a set of reference `.root` and `.json` files (s
1111
> Its structure and implementation may change during development.
1212
> We welcome early feedback on the current state from any interested party.
1313
14+
## Test Categories
15+
16+
Tests in the RNTuple Validation Suite are organized into (nested) *categories*.
17+
This is mirrored by the hierarchical directory layout in the repository.
18+
For example, the [`types`](types) directory contains tests related to type support in the RNTuple specification.
19+
It has subdirectories for tests concerning [fundamental types](types/fundamental) and C++ types, for example [`std::vector`](types/vector).
20+
More tests are planned in the future, please [consult the list of issues](https://github.com/root-project/rntuple-validation/issues) in the GitHub repository.
21+
1422
## Reference Implementation
1523

1624
This repository also contains a reference implementation with ROOT macros.
@@ -19,3 +27,13 @@ In this release, the API is not yet finalized and all classes are in the `ROOT::
1927
We plan to rely on this version until a first version of the RNTuple Validation Suite is done.
2028
Then we will produce a first set of reference files that can be used to test backwards compatibility.
2129
Afterwards, the implementation will be updated for the stable API (expected in ROOT v6.36).
30+
31+
### How to Run
32+
33+
For each test, we implement a `write.C` and `read.C` macro in the corresponding subdirectory.
34+
The `write.C` macro produces a `.root` file with the contents as described in the `README` of each test subdirectory.
35+
The `read.C` macro produces a `.json` file with a human-readable representation of the data in the `.root` file.
36+
They can be run individually or all at once with `make` using the top-level [`Makefile`](Makefile).
37+
The latter is also exercised by a GitHub Actions Workflow:
38+
![Execute ROOT macros](https://github.com/root-project/rntuple-validation/actions/workflows/root.yml/badge.svg)
39+
The job also uploads the produced set of `.root` and `.json` files, which can be downloaded from the Summary page.

0 commit comments

Comments
 (0)