From abdb9a133483f3a1968646289ae355e3cdddbf72 Mon Sep 17 00:00:00 2001 From: Matthijs Mekking Date: Fri, 25 Jul 2025 11:05:41 +0200 Subject: [PATCH] Improve key collision detection in ksr system test MR !10238 added key collision detection in the ksr system test but it was flawed because for every "collide" in the output we also log "Generating an new key" and for each "Generating" we add the counter by one, nullifying the subtract by one. Use regular expressions to search in the output and make the string expression more strict. --- bin/tests/system/ksr/tests_ksr.py | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/bin/tests/system/ksr/tests_ksr.py b/bin/tests/system/ksr/tests_ksr.py index 0555f626e1..23faab0eae 100644 --- a/bin/tests/system/ksr/tests_ksr.py +++ b/bin/tests/system/ksr/tests_ksr.py @@ -11,6 +11,7 @@ from datetime import timedelta import os +import re import shutil import time @@ -651,17 +652,10 @@ def test_ksr_common(ns1): overlapping_zsks = isctest.kasp.keystr_to_keylist(out, zskdir) assert len(overlapping_zsks) == 4 - verbose = err.split() - selected = 0 - generated = 0 - for output in verbose: - if "Selecting" in output: - selected += 1 - if "Generating" in output: - generated += 1 - # Subtract if there was a key collision. - if "collide" in output: - generated -= 1 + selected = len(re.findall("Selecting key pair", err)) + generated = len(re.findall("Generating key pair", err)) - len( + re.findall("collide", err) + ) assert selected == 2 assert generated == 2