dev-python/ndg-httpsclient: Enable tests
authorMichał Górny <mgorny@gentoo.org>
Tue, 9 May 2017 15:26:29 +0000 (17:26 +0200)
committerMichał Górny <mgorny@gentoo.org>
Tue, 9 May 2017 15:35:30 +0000 (17:35 +0200)
dev-python/ndg-httpsclient/ndg-httpsclient-0.4.2-r1.ebuild

index e7fb90d1d39be6699e72c87859cc3874f57ecfb2..d4f272ba1c6762c1e924250eb0b8e83cfc2a4b94 100644 (file)
@@ -16,16 +16,37 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P/-/_}.tar.gz"
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x64-cygwin ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
-IUSE=""
+IUSE="test"
 
 RDEPEND="dev-python/pyopenssl[$(python_gen_usedep 'python*' pypy)]"
+# we need to block the previous versions since incorrect namespace
+# install breaks tests
 DEPEND="${RDEPEND}
-       dev-python/setuptools[${PYTHON_USEDEP}]"
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       test? (
+               !!<dev-python/ndg-httpsclient-0.4.2-r1
+               dev-libs/openssl:0
+       )"
 
 S="${WORKDIR}/${P/-/_}"
 
 # doc build by Makefile in folder documentation is broken
 
+src_test() {
+       # we need to start a fake https server for tests to connect to
+       ( cd ndg/httpsclient/test && sh ./scripts/openssl_https_server.sh ) &
+       local server_pid=${!}
+
+       distutils-r1_src_test
+
+       kill "${server_pid}"
+       wait
+}
+
+python_test() {
+       "${PYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
+
 python_install() {
        distutils-r1_python_install