From 8cb51d4c2b79795124b1a9e9e1a08e3008d65260 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Fri, 11 Apr 2025 09:14:57 -0500 Subject: [PATCH] Avoid global namespace pollution Add a main() function to all custom servers based on isctest.asyncserver and move server startup code there. This prevents redefining variables from outer scope in custom server code as it evolves. --- bin/tests/system/qmin/ans2/ans.py | 6 +++++- bin/tests/system/qmin/ans3/ans.py | 6 +++++- bin/tests/system/qmin/ans4/ans.py | 6 +++++- bin/tests/system/upforwd/ans4/ans.py | 6 +++++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/bin/tests/system/qmin/ans2/ans.py b/bin/tests/system/qmin/ans2/ans.py index 7fa6a6c2c5..18f077781e 100644 --- a/bin/tests/system/qmin/ans2/ans.py +++ b/bin/tests/system/qmin/ans2/ans.py @@ -101,7 +101,7 @@ class StaleHandler(DomainHandler): yield send_delegation(qctx, b_stale, "10.53.0.4") -if __name__ == "__main__": +def main() -> None: server = AsyncDnsServer() server.install_response_handler(QueryLogger()) server.install_response_handler(BadHandler()) @@ -109,3 +109,7 @@ if __name__ == "__main__": server.install_response_handler(SlowHandler()) server.install_response_handler(StaleHandler()) server.run() + + +if __name__ == "__main__": + main() diff --git a/bin/tests/system/qmin/ans3/ans.py b/bin/tests/system/qmin/ans3/ans.py index 057bbb34d5..6547dd2f9b 100644 --- a/bin/tests/system/qmin/ans3/ans.py +++ b/bin/tests/system/qmin/ans3/ans.py @@ -37,10 +37,14 @@ class ZoopBoingSlowHandler(DelayedResponseHandler): delay = 0.4 -if __name__ == "__main__": +def main() -> None: server = AsyncDnsServer() server.install_response_handler(QueryLogger()) server.install_response_handler(ZoopBoingBadHandler()) server.install_response_handler(ZoopBoingUglyHandler()) server.install_response_handler(ZoopBoingSlowHandler()) server.run() + + +if __name__ == "__main__": + main() diff --git a/bin/tests/system/qmin/ans4/ans.py b/bin/tests/system/qmin/ans4/ans.py index ca43845a1d..ebe500bad6 100644 --- a/bin/tests/system/qmin/ans4/ans.py +++ b/bin/tests/system/qmin/ans4/ans.py @@ -83,7 +83,7 @@ class IckyPtangZoopBoingSlowHandler(DelayedResponseHandler): delay = 0.4 -if __name__ == "__main__": +def main() -> None: server = AsyncDnsServer() server.install_response_handler(QueryLogger()) server.install_response_handler(StaleHandler()) @@ -91,3 +91,7 @@ if __name__ == "__main__": server.install_response_handler(IckyPtangZoopBoingUglyHandler()) server.install_response_handler(IckyPtangZoopBoingSlowHandler()) server.run() + + +if __name__ == "__main__": + main() diff --git a/bin/tests/system/upforwd/ans4/ans.py b/bin/tests/system/upforwd/ans4/ans.py index bd6e863bd7..9c5f940b5c 100644 --- a/bin/tests/system/upforwd/ans4/ans.py +++ b/bin/tests/system/upforwd/ans4/ans.py @@ -14,7 +14,11 @@ information regarding copyright ownership. from isctest.asyncserver import AsyncDnsServer, IgnoreAllQueries -if __name__ == "__main__": +def main() -> None: server = AsyncDnsServer() server.install_response_handler(IgnoreAllQueries()) server.run() + + +if __name__ == "__main__": + main()