[nft PATCH] tests: py: Fix --keep test runner option

Phil Sutter <[email protected]> Thu, 16 Jul 2026 01:02:20 +0200
Newsgroups gmane.comp.security.firewalls.netfilter.devel
Message-ID <[email protected]>
The boolean flag expected a value, although not used. Set
'action=store_true' to really make it a flag.

While at it, simplify the code by eliminating the inverse-value
auto_delete helper variable.

Fixes: f2b5d6fc26b9a ("tests: py: don't use a fixed filename")
Signed-off-by: Phil Sutter <[email protected]>
---
 tests/py/nft-test.py | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/tests/py/nft-test.py b/tests/py/nft-test.py
index 56d4e0fc9d4e0..4a00ce0cd725a 100755
--- a/tests/py/nft-test.py
+++ b/tests/py/nft-test.py
@@ -36,7 +36,6 @@ chain_list = []
 all_set = dict()
 obj_list = []
 signal_received = 0
-auto_delete = True
 
 
 class Colors:
@@ -1523,7 +1522,7 @@ def set_delete_elements(set_element, set_name, table, filename=None,
     parser.add_argument('-l', '--library', default=None,
                         help='path to libntables.so.1, overrides --host')
 
-    parser.add_argument('-k', '--keep', default=False,
+    parser.add_argument('-k', '--keep', action='store_true',
                         help='keep log file around after tests')
 
     parser.add_argument('-N', '--no-netns', action='store_true',
@@ -1577,11 +1576,6 @@ def set_delete_elements(set_element, set_name, table, filename=None,
               "You need to build the project." % args.library)
         return 99
 
-    global auto_delete
-
-    if args.keep:
-        auto_delete = False
-
     if args.enable_schema and not args.enable_json:
         print_error("Option --schema requires option --json")
         return 99
@@ -1593,8 +1587,8 @@ def set_delete_elements(set_element, set_name, table, filename=None,
     tests = passed = warnings = errors = 0
     global log_file
     try:
-        log_file = tempfile.NamedTemporaryFile(prefix="nftables-test-py-", suffix=".log", mode='w', delete=auto_delete)
-        if auto_delete:
+        log_file = tempfile.NamedTemporaryFile(prefix="nftables-test-py-", suffix=".log", mode='w', delete = not args.keep)
+        if not args.keep:
             print_info("Log file %s will not be retained.  Pass -k to keep it." % log_file.name)
         else:
             print_info("Log will be available at %s" % log_file.name)
-- 
2.54.0