From c5230180adae9812c77f3b217db5c4c10c44b5b3 Mon Sep 17 00:00:00 2001 From: Debian Python Team Date: Thu, 21 Mar 2024 23:15:19 +0100 Subject: [PATCH] proposed_upstream__doctest.path # HG changeset patch # User Julien Cristau # Date 1589916203 -7200 # Tue May 19 21:23:23 2020 +0200 # Node ID de789b6b188b62cf38c5c5cfe760cff9a48c52f5 # Parent 3b7aabd02e11fcfc015b3a90a0c52d971a7b8a83 test: make test-doctest.py work when it's not run from a mercurial repo This assumption fails when building and running tests from a source tarball, e.g. Differential Revision: https://phab.mercurial-scm.org/D8571 Gbp-Pq: Name proposed_upstream__doctest.path --- tests/test-doctest.py | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/tests/test-doctest.py b/tests/test-doctest.py index 2612d54..315aba7 100644 --- a/tests/test-doctest.py +++ b/tests/test-doctest.py @@ -4,7 +4,6 @@ import doctest import os import re -import subprocess import sys if 'TERM' in os.environ: @@ -64,19 +63,17 @@ testmod_arg_overrides = { fileset = 'set:(**.py)' -cwd = os.path.dirname(os.environ["TESTDIR"]) +cwd = os.path.dirname(os.environb[b"TESTDIR"]) -if not os.path.isdir(os.path.join(cwd, ".hg")): - sys.exit(0) +files = [] +for dirpath, dirnames, filenames in os.walk(cwd): + excludeddirindexes = reversed([i for i, dir in enumerate(dirnames) if dir == b'build' or dir.startswith(b'.')]) + for i in excludeddirindexes: + del dirnames[i] + # include all .py files, removing the cwd + dirsep prefix + files.extend(os.path.join(dirpath, f)[len(cwd) + 1:] for f in filenames if f.endswith(b'.py')) -files = subprocess.check_output( - "hg files --print0 \"%s\"" % fileset, - shell=True, - cwd=cwd, -).split(b'\0') - -if sys.version_info[0] >= 3: - cwd = os.fsencode(cwd) +cwd = os.fsencode(cwd) mods_tested = set() for f in files: -- 2.30.2