summaryrefslogtreecommitdiff
blob: 9abdcee85b10b4e88b5054717d7e52d580ebaee3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7
PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy pypy3 )

inherit distutils-r1

DESCRIPTION="Thin-wrapper around the mock package for easier use with py.test"
HOMEPAGE="https://github.com/pytest-dev/pytest-mock/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE=""

RDEPEND="dev-python/pytest[${PYTHON_USEDEP}]
	$(python_gen_cond_dep '>=dev-python/mock-2[${PYTHON_USEDEP}]' -2)"
DEPEND="${RDEPEND}
	dev-python/setuptools[${PYTHON_USEDEP}]
	dev-python/setuptools_scm[${PYTHON_USEDEP}]"

src_prepare() {
	if has_version dev-python/mock; then
		# test fails when standalone mock is installed
		sed -e 's|^\(def \)\(test_standalone_mock(\)|\1_\2|' -i tests/test_pytest_mock.py || die
	fi
	sed -e 's|^\(    def \)\(test_failure_message_with_no_name(\)|\1_\2|' \
		-e 's|^\(    def \)\(test_failure_message_with_name(\)|\1_\2|' \
		-e 's|^\(def \)\(test_detailed_introspection(\)|\1_\2|' \
		-i tests/test_pytest_mock.py || die
	distutils-r1_src_prepare
}

python_test() {
	local -x PYTHONPATH=${PWD}${PYTHONPATH:+:}${PYTHONPATH}
	py.test -vv tests/test_pytest_mock.py || die "Tests fail with ${EPYTHON}"
}