Hoist the verify hashes logic in test.py into a helper function, verify_hashes(). This is a preparatory refactoring for the rds over ROCE series that helps modularize the send/recv logic. Breaking up the logic now will help avoid large function pylint errors later. No functional changes are introduced in this patch. Signed-off-by: Allison Henderson --- tools/testing/selftests/net/rds/test.py | 33 ++++++++++++------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/tools/testing/selftests/net/rds/test.py b/tools/testing/selftests/net/rds/test.py index 2e06e95827dd..6a7a5fe20034 100755 --- a/tools/testing/selftests/net/rds/test.py +++ b/tools/testing/selftests/net/rds/test.py @@ -152,6 +152,21 @@ def check_info(socks): ksft_pr(f"getsockopt(): {nr_success}/{nr_error}") +def verify_hashes(snd_hashes, rcv_hashes): + """Compare send/recv hashes per (sender, receiver) pair.""" + for key, snd_hash in snd_hashes.items(): + rcv_hash = rcv_hashes.get(key) + if rcv_hash is None: + ksft_pr("FAIL: No data received") + return 1 + if snd_hash.hexdigest() != rcv_hash.hexdigest(): + ksft_pr("FAIL: Send/recv mismatch") + ksft_pr("hash expected:", snd_hash.hexdigest()) + ksft_pr("hash received:", rcv_hash.hexdigest()) + return 1 + ksft_pr(f"{key[0]}/{key[1]}: ok") + return 0 + def stop_pcaps(): """Stop tcpdump processes. @@ -310,23 +325,7 @@ stop_pcaps() # We're done sending and receiving stuff, now let's check if what # we received is what we sent. -RC = 0 -for (sender, receiver), send_hash in send_hashes.items(): - recv_hash = recv_hashes.get((sender, receiver)) - - if recv_hash is None: - ksft_pr("FAIL: No data received") - RC = 1 - break - - if send_hash.hexdigest() != recv_hash.hexdigest(): - ksft_pr("FAIL: Send/recv mismatch") - ksft_pr("hash expected:", send_hash.hexdigest()) - ksft_pr("hash received:", recv_hash.hexdigest()) - RC = 1 - break - - ksft_pr(f"{sender}/{receiver}: ok") +RC = verify_hashes(send_hashes, recv_hashes) if RC == 0: ksft_pr("Success") -- 2.25.1