[RF] Test schema evolution of RooDataHist from version 5 and 6#8090
[RF] Test schema evolution of RooDataHist from version 5 and 6#8090guitargeek merged 1 commit intoroot-project:masterfrom
Conversation
|
Starting build on |
|
Build failed on ROOT-fedora31/noimt. Failing tests: |
|
Build failed on mac1014/python3. Failing tests: |
Extend the RooDataHist tests to also validate the schema evolution from version 5 and version 6. Version 6 is the current version, so the `dataHistv6_ref.root` reference file was produced with ROOT master. Version 5 was used in ROOT 6.24, which was used to produce the `dataHistv5_ref.root` reference file.
|
Starting build on |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
|
@guitargeek Maybe commit a comment on how to create the reference file above the test. Sorry that I didn't do that already. |
|
Build failed on mac11.0/cxx17. Errors:
|
The way I did this was simply to open the v4 file with a newer ROOT version, use the copy constructor of RooDataHist and save the copied object. Is this the way that you would document, or is there an easier way? |
Ah, right. That will work. I thought you re-engineered that RooDataHist to document it in the style of: root/roofit/roofitcore/test/testProxiesAndCategories.cxx Lines 59 to 80 in ef483dd In this case, it was probably this, but I don't remember: root/roofit/roofitcore/test/testRooDataHist.cxx Lines 242 to 248 in ef483dd |
|
Build failed on windows10/cxx14. Errors:
|
Extend the RooDataHist tests to also validate the schema evolution
from version 5 and version 6.
Version 6 is the current version, so the
dataHistv6_ref.rootreferencefile was produced with ROOT master. Version 5 was used in ROOT 6.24,
which was used to produce the
dataHistv5_ref.rootreference file.The version 6 reference file is a little bit smaller than the version 5 file, as the
_realVarsmember was removed with version 6.A nice aspect of the version 6 update is also that it's backwards compatible. The
initialize()function is called in the custom streamer of RooDataHist, so if the_realVarsmember is missing in the ROOT file it will still be initialized.This fixes issue #8037.