commit: eda5e9bfd6481ef10149cc981364a27457fd5a8c Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Wed Dec 16 10:38:12 2020 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Wed Dec 16 10:40:20 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eda5e9bf
dev-python/fsspec: Fix tests Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> .../fsspec/files/fsspec-0.8.2-test-cleanup.patch | 80 ++++++++++++++++++++++ dev-python/fsspec/fsspec-0.8.2.ebuild | 4 ++ 2 files changed, 84 insertions(+) diff --git a/dev-python/fsspec/files/fsspec-0.8.2-test-cleanup.patch b/dev-python/fsspec/files/fsspec-0.8.2-test-cleanup.patch new file mode 100644 index 00000000000..8227c2d23c6 --- /dev/null +++ b/dev-python/fsspec/files/fsspec-0.8.2-test-cleanup.patch @@ -0,0 +1,80 @@ +From f933694238f78fbef91367d5051d515e0f9d0635 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <[email protected]> +Date: Wed, 16 Dec 2020 11:32:04 +0100 +Subject: [PATCH] clean up properly after test_git + +Restore original directory after test_git. Otherwise, next tests +are run in non-existing directory and fail: + +[...] +> cwd = os.getcwd() +E FileNotFoundError: [Errno 2] No such file or directory + +/usr/lib/python3.9/site-packages/gunicorn/util.py:443: FileNotFoundError + +While at it, reflow the logic so that the temporary directory is always +cleaned, even if the test fails in middle of setup. +--- + fsspec/implementations/tests/test_git.py | 42 +++++++++++++----------- + 1 file changed, 22 insertions(+), 20 deletions(-) + +diff --git a/fsspec/implementations/tests/test_git.py b/fsspec/implementations/tests/test_git.py +index 562b228..4cd4c3f 100644 +--- a/fsspec/implementations/tests/test_git.py ++++ b/fsspec/implementations/tests/test_git.py +@@ -10,30 +10,32 @@ pygit2 = pytest.importorskip("pygit2") + + @pytest.fixture() + def repo(): ++ orig_dir = os.getcwd() + d = tempfile.mkdtemp() +- os.chdir(d) +- subprocess.call("git init", shell=True, cwd=d) +- subprocess.call("git init", shell=True, cwd=d) +- subprocess.call('git config user.email "[email protected]"', shell=True, cwd=d) +- subprocess.call('git config user.name "Your Name"', shell=True, cwd=d) +- open(os.path.join(d, "file1"), "wb").write(b"data0") +- subprocess.call("git add file1", shell=True, cwd=d) +- subprocess.call('git commit -m "init"', shell=True, cwd=d) +- sha = open(os.path.join(d, ".git/refs/heads/master"), "r").read().strip() +- open(os.path.join(d, "file1"), "wb").write(b"data00") +- subprocess.check_output('git commit -a -m "tagger"', shell=True, cwd=d) +- subprocess.call('git tag -a thetag -m "make tag"', shell=True, cwd=d) +- open(os.path.join(d, "file2"), "wb").write(b"data000") +- subprocess.call("git add file2", shell=True) +- subprocess.call('git commit -m "master tip"', shell=True, cwd=d) +- subprocess.call("git checkout -b abranch", shell=True, cwd=d) +- os.mkdir("inner") +- open(os.path.join(d, "inner", "file1"), "wb").write(b"data3") +- subprocess.call("git add inner/file1", shell=True, cwd=d) +- subprocess.call('git commit -m "branch tip"', shell=True, cwd=d) + try: ++ os.chdir(d) ++ subprocess.call("git init", shell=True, cwd=d) ++ subprocess.call("git init", shell=True, cwd=d) ++ subprocess.call('git config user.email "[email protected]"', shell=True, cwd=d) ++ subprocess.call('git config user.name "Your Name"', shell=True, cwd=d) ++ open(os.path.join(d, "file1"), "wb").write(b"data0") ++ subprocess.call("git add file1", shell=True, cwd=d) ++ subprocess.call('git commit -m "init"', shell=True, cwd=d) ++ sha = open(os.path.join(d, ".git/refs/heads/master"), "r").read().strip() ++ open(os.path.join(d, "file1"), "wb").write(b"data00") ++ subprocess.check_output('git commit -a -m "tagger"', shell=True, cwd=d) ++ subprocess.call('git tag -a thetag -m "make tag"', shell=True, cwd=d) ++ open(os.path.join(d, "file2"), "wb").write(b"data000") ++ subprocess.call("git add file2", shell=True) ++ subprocess.call('git commit -m "master tip"', shell=True, cwd=d) ++ subprocess.call("git checkout -b abranch", shell=True, cwd=d) ++ os.mkdir("inner") ++ open(os.path.join(d, "inner", "file1"), "wb").write(b"data3") ++ subprocess.call("git add inner/file1", shell=True, cwd=d) ++ subprocess.call('git commit -m "branch tip"', shell=True, cwd=d) + yield d, sha + finally: ++ os.chdir(orig_dir) + shutil.rmtree(d) + + +-- +2.29.2 + diff --git a/dev-python/fsspec/fsspec-0.8.2.ebuild b/dev-python/fsspec/fsspec-0.8.2.ebuild index fe649f0feac..7e7f5fb6a32 100644 --- a/dev-python/fsspec/fsspec-0.8.2.ebuild +++ b/dev-python/fsspec/fsspec-0.8.2.ebuild @@ -31,6 +31,10 @@ BDEPEND=" distutils_enable_tests pytest +PATCHES=( + "${FILESDIR}"/fsspec-0.8.2-test-cleanup.patch +) + src_test() { git config --global user.email "[email protected]" || die git config --global user.name "Your Name" || die
