diff --git a/tests/dictserver.py b/tests/dictserver.py index ea9f586c44..87a00d61d0 100755 --- a/tests/dictserver.py +++ b/tests/dictserver.py @@ -96,7 +96,7 @@ class DictHandler(socketserver.BaseRequestHandler): response_data = "No matches" # Send back a failure to find. - response = "552 {0}\n".format(response_data) + response = f"552 {response_data}\n" log.debug("[DICT] Responding with %r", response) self.request.sendall(response.encode("utf-8")) diff --git a/tests/http/test_11_unix.py b/tests/http/test_11_unix.py index 115c74f297..9321d71414 100644 --- a/tests/http/test_11_unix.py +++ b/tests/http/test_11_unix.py @@ -68,7 +68,7 @@ class UDSFaker: def _process(self): while self._done is False: try: - c, client_address = self._socket.accept() + c, _client_address = self._socket.accept() try: c.recv(16) c.sendall(b"""HTTP/1.1 200 Ok diff --git a/tests/http/testenv/caddy.py b/tests/http/testenv/caddy.py index 399bead7a5..6d79559b7e 100644 --- a/tests/http/testenv/caddy.py +++ b/tests/http/testenv/caddy.py @@ -47,7 +47,7 @@ class Caddy: def __init__(self, env: Env): self.env = env - self._caddy = os.environ['CADDY'] if 'CADDY' in os.environ else env.caddy + self._caddy = os.environ.get('CADDY', env.caddy) self._caddy_dir = os.path.join(env.gen_dir, 'caddy') self._docs_dir = os.path.join(self._caddy_dir, 'docs') self._conf_file = os.path.join(self._caddy_dir, 'Caddyfile') diff --git a/tests/http/testenv/certs.py b/tests/http/testenv/certs.py index 81eb09059d..6376a3d445 100644 --- a/tests/http/testenv/certs.py +++ b/tests/http/testenv/certs.py @@ -280,8 +280,7 @@ class CertStore: with open(cert_file, "wb") as fd: fd.write(creds.cert_pem) if chain: - for c in chain: - fd.write(c.cert_pem) + fd.writelines(c.cert_pem for c in chain) if pkey_file is None: fd.write(creds.pkey_pem) if pkey_file is not None: @@ -290,8 +289,7 @@ class CertStore: with open(comb_file, "wb") as fd: fd.write(creds.cert_pem) if chain: - for c in chain: - fd.write(c.cert_pem) + fd.writelines(c.cert_pem for c in chain) fd.write(creds.pkey_pem) creds.set_files(cert_file, pkey_file, comb_file) self._add_credentials(name, creds) @@ -306,8 +304,7 @@ class CertStore: chain = chain[:-1] chain_file = os.path.join(self._store_dir, f'{name}-{infix}.pem') with open(chain_file, "wb") as fd: - for c in chain: - fd.write(c.cert_pem) + fd.writelines(c.cert_pem for c in chain) def _add_credentials(self, name: str, creds: Credentials): if name not in self._creds_by_name: @@ -315,14 +312,14 @@ class CertStore: self._creds_by_name[name].append(creds) def get_credentials_for_name(self, name) -> List[Credentials]: - return self._creds_by_name[name] if name in self._creds_by_name else [] + return self._creds_by_name.get(name, []) def get_cert_file(self, name: str, key_type=None) -> str: - key_infix = ".{0}".format(key_type) if key_type is not None else "" + key_infix = f".{key_type}" if key_type is not None else "" return os.path.join(self._store_dir, f'{name}{key_infix}.cert.pem') def get_pkey_file(self, name: str, key_type=None) -> str: - key_infix = ".{0}".format(key_type) if key_type is not None else "" + key_infix = f".{key_type}" if key_type is not None else "" return os.path.join(self._store_dir, f'{name}{key_infix}.pkey.pem') def get_combined_file(self, name: str, key_type=None) -> str: diff --git a/tests/http/testenv/client.py b/tests/http/testenv/client.py index 39fd61054d..a2e72237f4 100644 --- a/tests/http/testenv/client.py +++ b/tests/http/testenv/client.py @@ -45,7 +45,7 @@ class LocalClient: self.env = env self._run_env = run_env self._timeout = timeout if timeout else env.test_timeout - self._curl = os.environ['CURL'] if 'CURL' in os.environ else env.curl + self._curl = os.environ.get('CURL', env.curl) self._run_dir = run_dir if run_dir else os.path.join(env.gen_dir, name) self._stdoutfile = f'{self._run_dir}/stdout' self._stderrfile = f'{self._run_dir}/stderr' diff --git a/tests/http/testenv/curl.py b/tests/http/testenv/curl.py index f37928471f..7b026e325f 100644 --- a/tests/http/testenv/curl.py +++ b/tests/http/testenv/curl.py @@ -627,7 +627,7 @@ class CurlClient: socks_args: Optional[List[str]] = None): self.env = env self._timeout = timeout if timeout else env.test_timeout - self._curl = os.environ['CURL'] if 'CURL' in os.environ else env.curl + self._curl = os.environ.get('CURL', env.curl) self._run_dir = run_dir if run_dir else os.path.join(env.gen_dir, 'curl') self._stdoutfile = f'{self._run_dir}/curl.stdout' self._stderrfile = f'{self._run_dir}/curl.stderr' diff --git a/tests/http/testenv/env.py b/tests/http/testenv/env.py index 24c2276c1e..0c19d6bd16 100644 --- a/tests/http/testenv/env.py +++ b/tests/http/testenv/env.py @@ -914,8 +914,7 @@ class Env: s = round((line_length / 10) + 1) * s10 s = s[0:line_length - 11] with open(fpath, "w") as fd: - for i in range(int(fsize / line_length)): - fd.write(f"{i:09d}-{s}\n") + fd.writelines(f"{i:09d}-{s}\n" for i in range(int(fsize / line_length))) remain = int(fsize % line_length) if remain != 0: i = int(fsize / line_length) + 1 diff --git a/tests/http/testenv/httpd.py b/tests/http/testenv/httpd.py index c2a0a22b8f..c389a9a56c 100644 --- a/tests/http/testenv/httpd.py +++ b/tests/http/testenv/httpd.py @@ -29,6 +29,7 @@ import os import shutil import socket import subprocess +import textwrap import time from datetime import datetime, timedelta from json import JSONEncoder @@ -137,8 +138,7 @@ class Httpd: env['APACHE_RUN_USER'] = os.environ['USER'] env['APACHE_LOCK_DIR'] = self._lock_dir env['APACHE_CONFDIR'] = self._apache_dir - p = subprocess.run(args, stderr=subprocess.PIPE, stdout=subprocess.PIPE, - cwd=self.env.gen_dir, + p = subprocess.run(args, capture_output=True, cwd=self.env.gen_dir, input=intext.encode() if intext else None, env=env, check=True) start = datetime.now() @@ -170,7 +170,7 @@ class Httpd: def start(self): # assure ports are allocated - for key, _ in Httpd.PORT_SPECS.items(): + for key in Httpd.PORT_SPECS: assert self.ports[key] is not None if self._maybe_running: self.stop() @@ -479,14 +479,13 @@ class Httpd: fd.write("\n".join(conf)) with open(os.path.join(self._conf_dir, 'mime.types'), 'w') as fd: - fd.write("\n".join([ - 'text/plain txt', - 'text/html html', - 'application/json json', - 'application/x-gzip gzip', - 'application/x-gzip gz', - '' - ])) + fd.write(textwrap.dedent("""\ + text/plain txt + text/html html + application/json json + application/x-gzip gzip + application/x-gzip gz + """)) def _get_proxy_conf(self): if self._proxy_auth_basic: diff --git a/tests/http/testenv/nghttpx.py b/tests/http/testenv/nghttpx.py index 3caa99dcca..50dd5e2152 100644 --- a/tests/http/testenv/nghttpx.py +++ b/tests/http/testenv/nghttpx.py @@ -27,6 +27,7 @@ import os import signal import socket import subprocess +import textwrap import time from datetime import datetime, timedelta from typing import Dict, Optional @@ -203,10 +204,10 @@ class Nghttpx: def _write_config(self): with open(self._conf_file, 'w') as fd: - fd.write('# nghttpx test config') - fd.write("\n".join([ - '# do we need something here?' - ])) + fd.write(textwrap.dedent("""\ + # nghttpx test config + # do we need something here? + """)) class NghttpxQuic(Nghttpx): diff --git a/tests/negtelnetserver.py b/tests/negtelnetserver.py index 4e65b62ec4..ad7cb53e98 100755 --- a/tests/negtelnetserver.py +++ b/tests/negtelnetserver.py @@ -310,9 +310,7 @@ def setup_logging(options): root_logger = logging.getLogger() add_stdout = False - formatter = logging.Formatter("%(asctime)s %(levelname)-5.5s " - "[{ident}] %(message)s" - .format(ident=IDENT)) + formatter = logging.Formatter(f"%(asctime)s %(levelname)-5.5s [{IDENT}] %(message)s") # Write out to a logfile if options.logfile: diff --git a/tests/smbserver.py b/tests/smbserver.py index 67ca6b2962..1072fd239d 100755 --- a/tests/smbserver.py +++ b/tests/smbserver.py @@ -64,7 +64,7 @@ class ShutdownHandler(threading.Thread): """ def __init__(self, server): - super(ShutdownHandler, self).__init__() + super().__init__() self.server = server self.shutdown_event = threading.Event() @@ -351,7 +351,7 @@ class TestSmbServer(imp_smbserver.SMBSERVER): class SmbError(Exception): def __init__(self, error_code, error_message): - super(SmbError, self).__init__(error_message) + super().__init__(error_message) self.error_code = error_code diff --git a/tests/util.py b/tests/util.py index bc94f41f7e..7c0ad4b499 100755 --- a/tests/util.py +++ b/tests/util.py @@ -33,18 +33,18 @@ REPLY_DATA = re.compile("[ \t\n\r]*(.*?)", re.MULTILINE class ClosingFileHandler(logging.StreamHandler): def __init__(self, filename): - super(ClosingFileHandler, self).__init__() + super().__init__() self.filename = os.path.abspath(filename) self.setStream(None) def emit(self, record): with open(self.filename, "a") as fp: self.setStream(fp) - super(ClosingFileHandler, self).emit(record) + super().emit(record) self.setStream(None) def setStream(self, stream): - setStream = getattr(super(ClosingFileHandler, self), 'setStream', None) + setStream = getattr(super(), 'setStream', None) if callable(setStream): return setStream(stream) if stream is self.stream: @@ -66,8 +66,7 @@ class TestData: def get_test_data(self, test_number): # Create the test filename - filename = os.path.join(self.data_folder, - "test{0}".format(test_number)) + filename = os.path.join(self.data_folder, f"test{test_number}") log.debug("Parsing file %s", filename)