Hi Ricardo, all, > Currently the only way of excluding certain tests from a collection is by > passing all the other tests explicitly via `--test`. Therefore, if the user > wants to skip a single test the resulting command line might be too big, > depending on the collection. Add an option `--skip` that takes care of > that. > > Signed-off-by: Ricardo B. Marlière <[email protected]> > --- > tools/testing/selftests/run_kselftest.sh | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/tools/testing/selftests/run_kselftest.sh > b/tools/testing/selftests/run_kselftest.sh > index d4be97498b32..84d45254675c 100755 > --- a/tools/testing/selftests/run_kselftest.sh > +++ b/tools/testing/selftests/run_kselftest.sh > @@ -30,6 +30,7 @@ Usage: $0 [OPTIONS] > -s | --summary Print summary with detailed log in output.log > (conflict with -p) > -p | --per-test-log Print test log in /tmp with each test > name (conflict with -s) > -t | --test COLLECTION:TEST Run TEST from COLLECTION > + -S | --skip COLLECTION:TEST Skip TEST from COLLECTION > -c | --collection COLLECTION Run all tests from COLLECTION > -l | --list List the available collection:test > entries > -d | --dry-run Don't actually run any tests > @@ -43,6 +44,7 @@ EOF > > COLLECTIONS="" > TESTS="" > +SKIP="" > dryrun="" > kselftest_override_timeout="" > ERROR_ON_FAIL=true > @@ -58,6 +60,9 @@ while true; do > -t | --test) > TESTS="$TESTS $2" > shift 2 ;; > + -S | --skip) > + SKIP="$SKIP $2" > + shift 2 ;; > -c | --collection) > COLLECTIONS="$COLLECTIONS $2" > shift 2 ;; > @@ -109,6 +114,12 @@ if [ -n "$TESTS" ]; then > done > available="$(echo "$valid" | sed -e 's/ /\n/g')" > fi > +# Remove tests to be skipped from available list > +if [ -n "$SKIP" ]; then > + for skipped in $SKIP ; do > + available="$(echo "$available" | grep -v "^${skipped}$")" > + done > +fi
LGTM. Reviewed-by: Petr Vorel <[email protected]> Kind regards, Petr

