diff options
-rw-r--r-- | dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch | 75 | ||||
-rw-r--r-- | dev-python/gitdb/gitdb-4.0.9-r1.ebuild | 63 |
2 files changed, 138 insertions, 0 deletions
diff --git a/dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch b/dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch new file mode 100644 index 000000000000..fe38e8c613ee --- /dev/null +++ b/dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch @@ -0,0 +1,75 @@ +From a61910fde100fa1112ec57dd3e456719724997ef Mon Sep 17 00:00:00 2001 +From: Carl George <carl@george.computer> +Date: Wed, 9 Feb 2022 17:15:39 -0600 +Subject: [PATCH] Switch from nose to pytest + +This is not a full rewrite to pytest style tests, it just changes the +minimum to allow pytest to run the existing tests. + +Resolves #72 +--- + .github/workflows/pythonpackage.yml | 6 +++--- + Makefile | 3 +-- + README.rst | 4 ++-- + gitdb.pro.user | 3 +-- + gitdb/test/db/test_pack.py | 4 ++-- + gitdb/test/lib.py | 4 ++-- + gitdb/test/test_pack.py | 4 ++-- + 7 files changed, 13 insertions(+), 15 deletions(-) + +diff --git a/gitdb/test/db/test_pack.py b/gitdb/test/db/test_pack.py +index ff96a58..4539f42 100644 +--- a/gitdb/test/db/test_pack.py ++++ b/gitdb/test/db/test_pack.py +@@ -16,7 +16,7 @@ + import random + import sys + +-from nose.plugins.skip import SkipTest ++import pytest + + class TestPackDB(TestDBBase): + +@@ -24,7 +24,7 @@ class TestPackDB(TestDBBase): + @with_packs_rw + def test_writing(self, path): + if sys.platform == "win32": +- raise SkipTest("FIXME: Currently fail on windows") ++ pytest.skip("FIXME: Currently fail on windows") + + pdb = PackedDB(path) + +diff --git a/gitdb/test/lib.py b/gitdb/test/lib.py +index a04084f..abd4ad5 100644 +--- a/gitdb/test/lib.py ++++ b/gitdb/test/lib.py +@@ -65,8 +65,8 @@ def skip_on_travis_ci(func): + @wraps(func) + def wrapper(self, *args, **kwargs): + if 'TRAVIS' in os.environ: +- import nose +- raise nose.SkipTest("Cannot run on travis-ci") ++ import pytest ++ pytest.skip("Cannot run on travis-ci") + # end check for travis ci + return func(self, *args, **kwargs) + # end wrapper +diff --git a/gitdb/test/test_pack.py b/gitdb/test/test_pack.py +index 4b01741..f946197 100644 +--- a/gitdb/test/test_pack.py ++++ b/gitdb/test/test_pack.py +@@ -26,7 +26,7 @@ + from gitdb.exc import UnsupportedOperation + from gitdb.util import to_bin_sha + +-from nose import SkipTest ++import pytest + + import os + import tempfile +@@ -246,4 +246,4 @@ def rewind_streams(): + def test_pack_64(self): + # TODO: hex-edit a pack helping us to verify that we can handle 64 byte offsets + # of course without really needing such a huge pack +- raise SkipTest() ++ pytest.skip('not implemented') diff --git a/dev-python/gitdb/gitdb-4.0.9-r1.ebuild b/dev-python/gitdb/gitdb-4.0.9-r1.ebuild new file mode 100644 index 000000000000..0180a26da09d --- /dev/null +++ b/dev-python/gitdb/gitdb-4.0.9-r1.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8..11} ) + +inherit distutils-r1 + +DESCRIPTION="GitDB is a pure-Python git object database" +HOMEPAGE=" + https://github.com/gitpython-developers/gitdb/ + https://pypi.org/project/gitdb/ +" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/smmap-3.0.1[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-vcs/git + ) +" + +PATCHES=( + "${FILESDIR}/${P}-nose-to-pytest.patch" +) + +distutils_enable_tests pytest + +src_test() { + local i + + mkdir "${T}"/repo || die + cd "${T}"/repo || die + + for (( i = 0; i < 2500; ++i )); do + echo "${i}" > file"${i}" || die + done + + git init || die + git config user.email "you@example.com" || die + git config user.name "Your Name" || die + git add -A || die + git commit -q -m ".." || die + git clone --bare "${T}"/repo "${T}"/repo.git || die + cd "${S}" || die + + distutils-r1_src_test +} + +python_test() { + #TRAVIS=1 disables performance tests which rely on the gitdb repo + local -x TRAVIS=1 + local -x GITDB_TEST_GIT_REPO_BASE="${T}"/repo.git + epytest +} |