#!/usr/bin/env bash # Runs the test suite and all examples scripts with Python 2 and Python 3, # bailing immediately if anything fails. For the examples that aren't tested in # the test suite, we just confirm that they at least run. # # Should be run from the kernel root with $ Kconfiglib/tests/reltest test_script() { echo -e "\n================= $1 with $py =================\n" if (($# == 1)); then make scriptconfig PYTHONCMD=$py SCRIPT=$1 else make scriptconfig PYTHONCMD=$py SCRIPT=$1 SCRIPT_ARG="$2" fi if (($?)); then echo "$1 failed to run with $py" exit 1 fi } for py in python2 python3; do echo -e "\n================= Test suite with $py =================\n" if ! $py Kconfiglib/testsuite.py; then echo "test suite failed for $py" exit 1 fi # Check that the example scripts that aren't tested by the test suite run # at least test_script Kconfiglib/examples/defconfig_oldconfig.py test_script Kconfiglib/examples/eval_expr.py MODULES test_script Kconfiglib/examples/find_symbol.py X86 test_script Kconfiglib/examples/help_grep.py general test_script Kconfiglib/examples/print_sym_info.py MODULES test_script Kconfiglib/examples/print_tree.py $py Kconfiglib/examples/menuconfig_example.py Kconfiglib/examples/Kmenuconfig <