]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
libsmartcols: (tests) fix failure reporting in filter test
authorThomas Weißschuh <thomas@t-8ch.de>
Tue, 28 Apr 2026 17:38:46 +0000 (19:38 +0200)
committerThomas Weißschuh <thomas@t-8ch.de>
Tue, 28 Apr 2026 22:09:00 +0000 (00:09 +0200)
The pipeline executes the calls to ts_init_subtest and
ts_finalize_subtest in a subshell. This breaks their functionality
and test failures are not reported properly.

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
tests/ts/libsmartcols/filter

index fdcca5dad99111825fb68a15f6ee02e3310915a6..f597f2be7c2f6f70f97d85ab921ebd2daf330e80 100755 (executable)
@@ -47,7 +47,7 @@ FILTERS["and-or"]='(NUM >= 3 && NUM <= 100) || NUM == 0'
 
 FILTERS["as-string"]='NUM == "100"'
 
-printf '%s\n' "${!FILTERS[@]}" | sort | while read name; do
+for name in "${!FILTERS[@]}"; do
        ts_init_subtest "$prefix-$name"
        echo "expr: ${FILTERS[$name]}" >> $TS_OUTPUT
        echo >> $TS_OUTPUT
@@ -94,7 +94,7 @@ FILTERS["le2"]='NUM <= 100.5'
 FILTERS["as-string"]='NUM == "100"'
 FILTERS["as-string2"]='NUM == "100.5"'
 
-printf '%s\n' "${!FILTERS[@]}" | sort | while read name; do
+for name in "${!FILTERS[@]}"; do
        ts_init_subtest "$prefix-$name"
        echo "expr: ${FILTERS[$name]}" >> $TS_OUTPUT
        echo >> $TS_OUTPUT
@@ -133,7 +133,7 @@ FILTERS["ne2"]='BOOL != true'
 FILTERS["as-string"]='BOOL == "0"'
 FILTERS["as-string2"]='BOOL == "1"'
 
-printf '%s\n' "${!FILTERS[@]}" | sort | while read name; do
+for name in "${!FILTERS[@]}"; do
        ts_init_subtest "$prefix-$name"
        echo "expr: ${FILTERS[$name]}" >> $TS_OUTPUT
        echo >> $TS_OUTPUT
@@ -168,7 +168,7 @@ FILTERS["le"]='NAME <= "bbb"'
 FILTERS["reg"]='NAME =~ "aaa.*"'
 FILTERS["nreg"]='NAME !~ "aaa.*"'
 
-printf '%s\n' "${!FILTERS[@]}" | sort | while read name; do
+for name in "${!FILTERS[@]}"; do
        ts_init_subtest "$prefix-$name"
        echo "expr: ${FILTERS[$name]}" >> $TS_OUTPUT
        echo >> $TS_OUTPUT
@@ -197,7 +197,7 @@ FILTERS["bad-column"]='XXX == 100'
 FILTERS["bad-number"]='NUM == 1y0'
 FILTERS["bad-float"]='NUM == 100 . 5'
 
-printf '%s\n' "${!FILTERS[@]}" | sort | while read name; do
+for name in "${!FILTERS[@]}"; do
        ts_init_subtest "$prefix-$name"
        echo "expr: ${FILTERS[$name]}" >> $TS_OUTPUT
        echo >> $TS_OUTPUT