From a971a3188bbf4588f86ab7977d2a81c933cdaf8e Mon Sep 17 00:00:00 2001 From: "Matthias J. Kannwischer" Date: Tue, 18 Jun 2019 15:37:35 +0200 Subject: [PATCH] Revert "temporarily disable pre-processor test" This reverts commit def5bddb62098afe134ed30dbeb82f0c195968cc. --- test/test_preprocessor.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 test/test_preprocessor.py diff --git a/test/test_preprocessor.py b/test/test_preprocessor.py new file mode 100644 index 00000000..043b7a50 --- /dev/null +++ b/test/test_preprocessor.py @@ -0,0 +1,36 @@ +import pqclean +import helpers + + +def test_preprocessor(): + for scheme in pqclean.Scheme.all_schemes(): + for implementation in scheme.implementations: + yield check_preprocessor, implementation + + +@helpers.filtered_test +def check_preprocessor(implementation: pqclean.Implementation): + cfiles = implementation.cfiles() + hfiles = implementation.hfiles() + errors = [] + for file in hfiles + cfiles: + with open(file) as f: + for i, line in enumerate(f): + line = line.strip() + if file in hfiles and i == 0 and line.startswith('#ifndef'): + continue + if line.startswith('#if'): + errors.append("\n at {}:{}".format(file, i+1)) + if errors: + raise AssertionError( + "Prohibited use of preprocessor conditional" + "".join(errors) + ) + + +if __name__ == "__main__": + try: + import nose2 + nose2.main() + except ImportError: + import nose + nose.runmodule()