"""
Test framework for C-programs. The framework implements compilation tests, input-output tests,
structural tests and grey box tests.
It is assumed that libclang from clang 11.0 is installed (https://apt.llvm.org/).
"""
from platform import system
from clang.cindex import Config
[docs]def setup_libclang():
"""Sets the appropriate libclang source path for the current environment."""
__system = system()
if __system == 'Darwin':
Config.set_library_path('/usr/local/opt/llvm/lib')
elif __system == 'Linux':
Config.set_library_file('/usr/lib/llvm-11/lib/libclang-11.so')
setup_libclang()