Skip to content

Commit 747ba87

Browse files
Geliang Tangkuba-moo
authored andcommitted
selftests: mptcp: print test results with colors
To unify the output formats of all test scripts, this patch adds four more helpers: mptcp_lib_pr_ok() mptcp_lib_pr_skip() mptcp_lib_pr_fail() mptcp_lib_pr_info() to print out [ OK ], [SKIP], [FAIL] and 'INFO: ' with colors. Use them in all scripts to print the "ok/skip/fail/info' using the same 'format'. Having colors helps to quickly identify issues when looking at a long list of output logs and results. Note that now all print the same keywords, which was not the case before, but it is good to uniform that. Signed-off-by: Geliang Tang <[email protected]> Reviewed-by: Matthieu Baerts (NGI0) <[email protected]> Signed-off-by: Matthieu Baerts (NGI0) <[email protected]> Link: https://lore.kernel.org/r/20240308-upstream-net-next-20240308-selftests-mptcp-unification-v1-9-4f42c347b653@kernel.org Signed-off-by: Jakub Kicinski <[email protected]>
1 parent e7c42bf commit 747ba87

File tree

8 files changed

+90
-87
lines changed

8 files changed

+90
-87
lines changed

tools/testing/selftests/net/mptcp/diag.sh

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,15 +57,15 @@ __chk_nr()
5757
mptcp_lib_print_title "$msg"
5858
if [ "$nr" != "$expected" ]; then
5959
if [ "$nr" = "$skip" ] && ! mptcp_lib_expect_all_features; then
60-
echo "[ skip ] Feature probably not supported"
60+
mptcp_lib_pr_skip "Feature probably not supported"
6161
mptcp_lib_result_skip "${msg}"
6262
else
63-
echo "[ fail ] expected $expected found $nr"
63+
mptcp_lib_pr_fail "expected $expected found $nr"
6464
mptcp_lib_result_fail "${msg}"
6565
ret=${KSFT_FAIL}
6666
fi
6767
else
68-
echo "[ ok ]"
68+
mptcp_lib_pr_ok
6969
mptcp_lib_result_pass "${msg}"
7070
fi
7171
}
@@ -114,15 +114,15 @@ wait_msk_nr()
114114

115115
mptcp_lib_print_title "$msg"
116116
if [ $i -ge $timeout ]; then
117-
echo "[ fail ] timeout while expecting $expected max $max last $nr"
117+
mptcp_lib_pr_fail "timeout while expecting $expected max $max last $nr"
118118
mptcp_lib_result_fail "${msg} # timeout"
119119
ret=${KSFT_FAIL}
120120
elif [ $nr != $expected ]; then
121-
echo "[ fail ] expected $expected found $nr"
121+
mptcp_lib_pr_fail "expected $expected found $nr"
122122
mptcp_lib_result_fail "${msg} # unexpected result"
123123
ret=${KSFT_FAIL}
124124
else
125-
echo "[ ok ]"
125+
mptcp_lib_pr_ok
126126
mptcp_lib_result_pass "${msg}"
127127
fi
128128
}

tools/testing/selftests/net/mptcp/mptcp_connect.sh

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,7 @@ set_ethtool_flags() {
218218
local flags="$3"
219219

220220
if ip netns exec $ns ethtool -K $dev $flags 2>/dev/null; then
221-
echo "INFO: set $ns dev $dev: ethtool -K $flags"
221+
mptcp_lib_pr_info "set $ns dev $dev: ethtool -K $flags"
222222
fi
223223
}
224224

@@ -261,7 +261,7 @@ check_mptcp_disabled()
261261
print_larger_title "New MPTCP socket can be blocked via sysctl"
262262
# net.mptcp.enabled should be enabled by default
263263
if [ "$(ip netns exec ${disabled_ns} sysctl net.mptcp.enabled | awk '{ print $3 }')" -ne 1 ]; then
264-
echo -e "net.mptcp.enabled sysctl is not 1 by default\t\t[ FAIL ]"
264+
mptcp_lib_pr_fail "net.mptcp.enabled sysctl is not 1 by default"
265265
mptcp_lib_result_fail "net.mptcp.enabled sysctl is not 1 by default"
266266
ret=1
267267
return 1
@@ -274,13 +274,13 @@ check_mptcp_disabled()
274274
mptcp_lib_ns_exit "${disabled_ns}"
275275

276276
if [ ${err} -eq 0 ]; then
277-
echo -e "New MPTCP socket cannot be blocked via sysctl\t\t[ FAIL ]"
277+
mptcp_lib_pr_fail "New MPTCP socket cannot be blocked via sysctl"
278278
mptcp_lib_result_fail "New MPTCP socket cannot be blocked via sysctl"
279279
ret=1
280280
return 1
281281
fi
282282

283-
echo "[ OK ]"
283+
mptcp_lib_pr_ok
284284
mptcp_lib_result_pass "New MPTCP socket can be blocked via sysctl"
285285
return 0
286286
}
@@ -301,7 +301,7 @@ do_ping()
301301
ip netns exec ${connector_ns} ping ${ping_args} $connect_addr >/dev/null || rc=1
302302

303303
if [ $rc -ne 0 ] ; then
304-
echo "$listener_ns -> $connect_addr connectivity [ FAIL ]"
304+
mptcp_lib_pr_fail "$listener_ns -> $connect_addr connectivity"
305305
ret=1
306306

307307
return 1
@@ -335,7 +335,7 @@ do_transfer()
335335
fi
336336

337337
if [ -n "$extra_args" ] && $options_log; then
338-
echo "INFO: extra options: $extra_args"
338+
mptcp_lib_pr_info "extra options: $extra_args"
339339
fi
340340
options_log=false
341341

@@ -432,7 +432,7 @@ do_transfer()
432432
result_msg+=" # time=${duration}ms"
433433
printf "(duration %05sms) " "${duration}"
434434
if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then
435-
echo "[ FAIL ] client exit code $retc, server $rets" 1>&2
435+
mptcp_lib_pr_fail "client exit code $retc, server $rets"
436436
echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2
437437
ip netns exec ${listener_ns} ss -Menita 1>&2 -o "sport = :$port"
438438
cat /tmp/${listener_ns}.out
@@ -475,14 +475,14 @@ do_transfer()
475475
fi
476476

477477
if [ ${stat_synrx_now_l} -lt ${expect_synrx} ]; then
478-
printf "[ FAIL ] lower MPC SYN rx (%d) than expected (%d)\n" \
479-
"${stat_synrx_now_l}" "${expect_synrx}"
478+
mptcp_lib_pr_fail "lower MPC SYN rx (${stat_synrx_now_l})" \
479+
"than expected (${expect_synrx})"
480480
retc=1
481481
fi
482482
if [ ${stat_ackrx_now_l} -lt ${expect_ackrx} ] && [ ${stat_ooo_now} -eq 0 ]; then
483483
if [ ${stat_ooo_now} -eq 0 ]; then
484-
printf "[ FAIL ] lower MPC ACK rx (%d) than expected (%d)\n" \
485-
"${stat_ackrx_now_l}" "${expect_ackrx}"
484+
mptcp_lib_pr_fail "lower MPC ACK rx (${stat_ackrx_now_l})" \
485+
"than expected (${expect_ackrx})"
486486
rets=1
487487
else
488488
extra+=" [ Note ] fallback due to TCP OoO"
@@ -497,13 +497,13 @@ do_transfer()
497497

498498
local csum_err_s_nr=$((csum_err_s - stat_csum_err_s))
499499
if [ $csum_err_s_nr -gt 0 ]; then
500-
printf "[ FAIL ]\nserver got %d data checksum error[s]" ${csum_err_s_nr}
500+
mptcp_lib_pr_fail "server got ${csum_err_s_nr} data checksum error[s]"
501501
rets=1
502502
fi
503503

504504
local csum_err_c_nr=$((csum_err_c - stat_csum_err_c))
505505
if [ $csum_err_c_nr -gt 0 ]; then
506-
printf "[ FAIL ]\nclient got %d data checksum error[s]" ${csum_err_c_nr}
506+
mptcp_lib_pr_fail "client got ${csum_err_c_nr} data checksum error[s]"
507507
retc=1
508508
fi
509509
fi
@@ -534,11 +534,11 @@ do_transfer()
534534
fi
535535

536536
if [ $retc -eq 0 ] && [ $rets -eq 0 ]; then
537-
printf "[ OK ]%s\n" "${extra:1}"
537+
mptcp_lib_pr_ok "${extra:1}"
538538
mptcp_lib_result_pass "${TEST_GROUP}: ${result_msg}"
539539
else
540540
if [ -n "${extra}" ]; then
541-
printf "%s\n" "${extra:1}"
541+
mptcp_lib_print_warn "${extra:1}"
542542
fi
543543
mptcp_lib_result_fail "${TEST_GROUP}: ${result_msg}"
544544
fi
@@ -668,7 +668,7 @@ run_test_transparent()
668668
# following function has been exported (T). Not great but better than
669669
# checking for a specific kernel version.
670670
if ! mptcp_lib_kallsyms_has "T __ip_sock_set_tos$"; then
671-
echo "INFO: ${msg} not supported by the kernel: SKIP"
671+
mptcp_lib_pr_skip "${msg} not supported by the kernel"
672672
mptcp_lib_result_skip "${TEST_GROUP}"
673673
return
674674
fi
@@ -685,7 +685,7 @@ table inet mangle {
685685
}
686686
EOF
687687
then
688-
echo "SKIP: $msg, could not load nft ruleset"
688+
mptcp_lib_pr_skip "$msg, could not load nft ruleset"
689689
mptcp_lib_fail_if_expected_feature "nft rules"
690690
mptcp_lib_result_skip "${TEST_GROUP}"
691691
return
@@ -701,7 +701,7 @@ EOF
701701

702702
if ! ip -net "$listener_ns" $r6flag rule add fwmark 1 lookup 100; then
703703
ip netns exec "$listener_ns" nft flush ruleset
704-
echo "SKIP: $msg, ip $r6flag rule failed"
704+
mptcp_lib_pr_skip "$msg, ip $r6flag rule failed"
705705
mptcp_lib_fail_if_expected_feature "ip rule"
706706
mptcp_lib_result_skip "${TEST_GROUP}"
707707
return
@@ -710,13 +710,13 @@ EOF
710710
if ! ip -net "$listener_ns" route add local $local_addr/0 dev lo table 100; then
711711
ip netns exec "$listener_ns" nft flush ruleset
712712
ip -net "$listener_ns" $r6flag rule del fwmark 1 lookup 100
713-
echo "SKIP: $msg, ip route add local $local_addr failed"
713+
mptcp_lib_pr_skip "$msg, ip route add local $local_addr failed"
714714
mptcp_lib_fail_if_expected_feature "ip route"
715715
mptcp_lib_result_skip "${TEST_GROUP}"
716716
return
717717
fi
718718

719-
echo "INFO: test $msg"
719+
mptcp_lib_pr_info "test $msg"
720720

721721
port=$((20000 - 1))
722722
local extra_args="-o TRANSPARENT"
@@ -729,12 +729,12 @@ EOF
729729
ip -net "$listener_ns" route del local $local_addr/0 dev lo table 100
730730

731731
if [ $lret -ne 0 ]; then
732-
echo "FAIL: $msg, mptcp connection error"
732+
mptcp_lib_pr_fail "$msg, mptcp connection error"
733733
ret=$lret
734734
return 1
735735
fi
736736

737-
echo "PASS: $msg"
737+
mptcp_lib_pr_info "$msg pass"
738738
return 0
739739
}
740740

@@ -743,7 +743,7 @@ run_tests_peekmode()
743743
local peekmode="$1"
744744

745745
TEST_GROUP="peek mode: ${peekmode}"
746-
echo "INFO: with peek mode: ${peekmode}"
746+
mptcp_lib_pr_info "with peek mode: ${peekmode}"
747747
run_tests_lo "$ns1" "$ns1" 10.0.1.1 1 "-P ${peekmode}"
748748
run_tests_lo "$ns1" "$ns1" dead:beef:1::1 1 "-P ${peekmode}"
749749
}
@@ -753,12 +753,12 @@ run_tests_mptfo()
753753
TEST_GROUP="MPTFO"
754754

755755
if ! mptcp_lib_kallsyms_has "mptcp_fastopen_"; then
756-
echo "INFO: TFO not supported by the kernel: SKIP"
756+
mptcp_lib_pr_skip "TFO not supported by the kernel"
757757
mptcp_lib_result_skip "${TEST_GROUP}"
758758
return
759759
fi
760760

761-
echo "INFO: with MPTFO start"
761+
mptcp_lib_pr_info "with MPTFO start"
762762
ip netns exec "$ns1" sysctl -q net.ipv4.tcp_fastopen=2
763763
ip netns exec "$ns2" sysctl -q net.ipv4.tcp_fastopen=1
764764

@@ -770,7 +770,7 @@ run_tests_mptfo()
770770

771771
ip netns exec "$ns1" sysctl -q net.ipv4.tcp_fastopen=0
772772
ip netns exec "$ns2" sysctl -q net.ipv4.tcp_fastopen=0
773-
echo "INFO: with MPTFO end"
773+
mptcp_lib_pr_info "with MPTFO end"
774774
}
775775

776776
run_tests_disconnect()
@@ -781,7 +781,7 @@ run_tests_disconnect()
781781
TEST_GROUP="full disconnect"
782782

783783
if ! mptcp_lib_kallsyms_has "mptcp_pm_data_reset$"; then
784-
echo "INFO: Full disconnect not supported: SKIP"
784+
mptcp_lib_pr_skip "Full disconnect not supported"
785785
mptcp_lib_result_skip "${TEST_GROUP}"
786786
return
787787
fi
@@ -794,7 +794,7 @@ run_tests_disconnect()
794794
cin_disconnect="$old_cin"
795795
connect_per_transfer=3
796796

797-
echo "INFO: disconnect"
797+
mptcp_lib_pr_info "disconnect"
798798
run_tests_lo "$ns1" "$ns1" 10.0.1.1 1 "-I 3 -i $old_cin"
799799
run_tests_lo "$ns1" "$ns1" dead:beef:1::1 1 "-I 3 -i $old_cin"
800800

@@ -818,7 +818,7 @@ log_if_error()
818818
local msg="$1"
819819

820820
if [ ${ret} -ne 0 ]; then
821-
echo "FAIL: ${msg}"
821+
mptcp_lib_pr_fail "${msg}"
822822

823823
final_ret=${ret}
824824
ret=0
@@ -865,7 +865,7 @@ done
865865
mptcp_lib_result_code "${ret}" "ping tests"
866866

867867
stop_if_error "Could not even run ping tests"
868-
echo "[ OK ]"
868+
mptcp_lib_pr_ok
869869

870870
[ -n "$tc_loss" ] && tc -net "$ns2" qdisc add dev ns2eth3 root netem loss random $tc_loss delay ${tc_delay}ms
871871
tc_info="loss of $tc_loss "
@@ -890,7 +890,7 @@ elif [ "$reorder_delay" -gt 0 ];then
890890
tc_info+="$tc_reorder with delay ${reorder_delay}ms "
891891
fi
892892

893-
echo "INFO: Using ${tc_info}on ns3eth4"
893+
mptcp_lib_pr_info "Using ${tc_info}on ns3eth4"
894894

895895
tc -net "$ns3" qdisc add dev ns3eth4 root netem delay ${reorder_delay}ms $tc_reorder
896896

tools/testing/selftests/net/mptcp/mptcp_join.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -185,17 +185,17 @@ print_info()
185185

186186
print_ok()
187187
{
188-
mptcp_lib_print_ok "[ ok ]${1:+ ${*}}"
188+
mptcp_lib_pr_ok "${@}"
189189
}
190190

191191
print_fail()
192192
{
193-
mptcp_lib_print_err "[fail]${1:+ ${*}}"
193+
mptcp_lib_pr_fail "${@}"
194194
}
195195

196196
print_skip()
197197
{
198-
mptcp_lib_print_warn "[skip]${1:+ ${*}}"
198+
mptcp_lib_pr_skip "${@}"
199199
}
200200

201201
# [ $1: fail msg ]

0 commit comments

Comments
 (0)