New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added the TestProcessor system #23194
Conversation
Initial commit of the TestProcessor testing infrastructure. This version can load a module and run it.
The very last data product in the Principal can now also use the SingleChoiceNoProcessProductResolver optimization if appropriate. This should have been available when SingleChoiceNoProcessProductResolver was first added, but was an oversight.
TestProcessorConfig needs to be able to construct a EDPutTokenT.
Extended TestProcessor to allow testing of EDFilters. One can use the edm::test::Event to get access to the filters result.
Can register additional processes to the test and provide data from those processes.
Added an option to have the module check the expected value for each Run. If the value does not match, an exception will be thrown.
In addition to specifying a module to test, one can also use a series of needed EDProducers via a Task to help with the testing.
Tests can now specify EventSetup data products to be accessible by the modules.
Also fixed formatting.
The code-checks are being triggered in jenkins. |
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-23194/4642 Code check has found code style and quality issues which could be resolved by applying a patch in https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-23194/4642/git-diff.patch You can run |
-1 Tested at: 37e4cbc You can see the results of the tests here: I found follow errors while testing this PR Failed tests: UnitTests ClangBuild
I found errors in the following unit tests: ---> test unitTestsGroup_4 had ERRORS
I found a compilation error while trying to compile with clang: In file included from /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/boost/1.63.0-omkpbe2/include/boost/python.hpp:11: In file included from /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/boost/1.63.0-omkpbe2/include/boost/python/args.hpp:8: In file included from /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/boost/1.63.0-omkpbe2/include/boost/python/detail/prefix.hpp:13: In file included from /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/boost/1.63.0-omkpbe2/include/boost/python/detail/wrap_python.hpp:151: In file included from /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/python/2.7.11-omkpbe2/include/python2.7/Python.h:85: /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/python/2.7.11-omkpbe2/include/python2.7/unicodeobject.h:534:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister] register PyObject *obj, /* Object */ ^~~~~~~~~ /cvmfs/cms-ib.cern.ch/nweek-02523/slc6_amd64_gcc630/external/python/2.7.11-omkpbe2/include/python2.7/unicodeobject.h:553:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister] register PyObject *obj /* Object */ ^~~~~~~~~ |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1 |
@fabiocos @smuzaffar the unit test and clang compilation errors are false positives. The unit test failures are the ones in the IB caused by the change to jemalloc which changed the allowed configuration parameters. The clang compilation error stems from python2.7 headers not being C++17 compatible. |
@Dr15Jones for the unit tests ok, @smuzaffar is modifying the jemalloc tool file. Concerning the other issue, as far as I can see the problem is not caused by this PR, just a pre-existent issue that is put in evidence by it, as headers including BootPython.h are used. Still, should we consider this just as "normal"? |
@fabiocos I think we should make an issue about th python error but not keep this pull request from being integrated because of it. |
+1
|
This pull request is fully signed and it will be integrated in one of the next master IBs (but tests are reportedly failing). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @slava77, @smuzaffar, @fabiocos (and backports should be raised in the release meeting by the corresponding L2) |
@fabiocos it would be nice to get this into the release today so when I speak about it tomorrow someone could give it a try. |
+1 |
merge |
The TestProcessor system allows one to write unit tests for individual CMSSW modules.