diff options
Diffstat (limited to 'dev-python/dbusmock')
-rw-r--r-- | dev-python/dbusmock/Manifest | 5 | ||||
-rw-r--r-- | dev-python/dbusmock/dbusmock-0.16.9.ebuild | 46 | ||||
-rw-r--r-- | dev-python/dbusmock/files/0.16.9-disable-style-tests.patch | 14 | ||||
-rw-r--r-- | dev-python/dbusmock/files/0.16.9-replace-dbus-launch.patch | 76 | ||||
-rw-r--r-- | dev-python/dbusmock/metadata.xml | 8 |
5 files changed, 149 insertions, 0 deletions
diff --git a/dev-python/dbusmock/Manifest b/dev-python/dbusmock/Manifest new file mode 100644 index 000000000000..90682b3257f7 --- /dev/null +++ b/dev-python/dbusmock/Manifest @@ -0,0 +1,5 @@ +AUX 0.16.9-disable-style-tests.patch 502 BLAKE2B bc082ee45ac39a3457457d2d7d92809765ef27eb5d160e44546036223a511ce799e6be8abcfa5b7444619dc62188ab0b30f4b23a23b608e93c9054cd93253223 SHA512 1d9f957a74b767db9355380437233167e1c2e6957dd993843ad7eaac3f0cfb9fad739b9238207d60db203bf6daed6f1b5ce9373ef1a4085431845e8f8f9b6147 +AUX 0.16.9-replace-dbus-launch.patch 2851 BLAKE2B ddbfe3ffb7a5b55af448e5312340a83587ec7aa7613111caad4c9c54df4d2c05f6b0efb755262044e749d1d0c6ed2a289b02103f81518bd6ea24da7181bc71e0 SHA512 43fc52f453b086b59f854677eafda955ddd1e6a448579ac60de7288f6f1c8e8e029f5af12486ef6c14ba01f41fd10785c7bb076dcf4968349811be47c0b56073 +DIST dbusmock-0.16.9.tar.gz 71014 BLAKE2B d1c0853cfd06848f1d10afdd8de764814054a44080b44e1ac2ef3a1658a538f1e4c7f5936d65658c16da33ccbc2e94f35d2746f200fc6791f645e1eccc55f6fd SHA512 3aa91f6ede054ed3d3a69f68f3886094e881d266a8f09c7d08a34d10b080a77facde8aae01e75232472c2e643574fe897dae2c3588f5ad9ecf4ec4e67f404f54 +EBUILD dbusmock-0.16.9.ebuild 1073 BLAKE2B 4132501eab8d6b80dcc358a374a1ccbce3c6f895cb2acbf9f0495356416dbcc46185851e07bc5eff7e074663e440f5ec8f05823af28e49f2f6d1f6fdaec210ce SHA512 4cdba997091e91ba72fb499d559551d88be0dd412373970028bb6169e7b89c6ec1ddc41460e0267474621a815e89ed6e0af37aa9f643d667162a9ba29c01e8ef +MISC metadata.xml 253 BLAKE2B a1efbd3751efaa83ee173f557ec1c8a4497a90b60896cf5a7a07da40b4f94a7a299ca0385477e82b2f5e5dbdf9afa482ccbe21f35ef44214e9c451d764b65529 SHA512 8d59f413993268ca783f7407b676900bb2d964754bf705d4175e2bafbe058a52af74f3928e4bd84d292518f8cf13fab7051486ab7cdc61d02fae6e0188d44442 diff --git a/dev-python/dbusmock/dbusmock-0.16.9.ebuild b/dev-python/dbusmock/dbusmock-0.16.9.ebuild new file mode 100644 index 000000000000..a2e501033734 --- /dev/null +++ b/dev-python/dbusmock/dbusmock-0.16.9.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{4,5,6} ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 + +MY_PN="python-${PN}" +MY_P="${MY_PN}-${PV}" +S="${WORKDIR}/${MY_P}" + +DESCRIPTION="Easily create mock objects on D-Bus for software testing" +HOMEPAGE="https://github.com/martinpitt/python-dbusmock" +SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz -> ${P}.tar.gz" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc x86" +IUSE="test" + +RDEPEND=" + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND} + >=dev-python/setuptools-17.1[${PYTHON_USEDEP}] + test? ( + dev-python/nose[${PYTHON_USEDEP}] + )" + +PATCHES=( + "${FILESDIR}"/0.16.9-disable-style-tests.patch + "${FILESDIR}"/0.16.9-replace-dbus-launch.patch +) + +python_test() { + nosetests --verbose || die "tests fail under ${EPYTHON}" +} + +python_install_all() { + local DOCS=( NEWS README.rst ) + + distutils-r1_python_install_all +} diff --git a/dev-python/dbusmock/files/0.16.9-disable-style-tests.patch b/dev-python/dbusmock/files/0.16.9-disable-style-tests.patch new file mode 100644 index 000000000000..cb7febdb4e53 --- /dev/null +++ b/dev-python/dbusmock/files/0.16.9-disable-style-tests.patch @@ -0,0 +1,14 @@ +These tests are bound to fail dependending on QA tools updates + +https://github.com/martinpitt/python-dbusmock/issues/28 + +--- a/tests/test_code.py 2017-08-16 09:20:43.848503995 +0200 ++++ b/tests/test_code.py 2017-08-16 09:20:54.410177037 +0200 +@@ -21,6 +21,7 @@ + pycodestyle = None + + ++@unittest.skip('style tests') + class StaticCodeTests(unittest.TestCase): + @unittest.skipIf(subprocess.call(['which', 'pyflakes'], stdout=subprocess.PIPE) != 0, + 'pyflakes not installed') diff --git a/dev-python/dbusmock/files/0.16.9-replace-dbus-launch.patch b/dev-python/dbusmock/files/0.16.9-replace-dbus-launch.patch new file mode 100644 index 000000000000..54149ed033aa --- /dev/null +++ b/dev-python/dbusmock/files/0.16.9-replace-dbus-launch.patch @@ -0,0 +1,76 @@ +From 9470c54a2836795974e83e55ea859e4653b20b37 Mon Sep 17 00:00:00 2001 +From: Martin Pitt <martin@piware.de> +Date: Mon, 19 Jun 2017 16:31:28 +0200 +Subject: [PATCH] Call dbus-daemon directly instead of dbus-launch + +dbus-launch is X11 specific and being deprecated. + +Adjust documentation to use dbus-run-session instead. + +https://bugs.debian.org/836053 +--- + NEWS | 4 ++++ + README.rst | 6 +++--- + dbusmock/testcase.py | 18 ++++++++++-------- + 3 files changed, 17 insertions(+), 11 deletions(-) + +diff --git a/NEWS b/NEWS +index c1250ea..181a4df 100644 +--- a/NEWS ++++ b/NEWS +@@ -1,3 +1,7 @@ ++0.17 (UNRELEASED) ++----------------- ++ - Call dbus-daemon directly instead of dbus-launch. (Debian #836053) ++ + 0.16.9 (2017-06-19) + ------------------- + - NetworkManager template: Fix type of 'State' property in AddActiveConnection() +diff --git a/README.rst b/README.rst +index 3dc4552..310e1ac 100644 +--- a/README.rst ++++ b/README.rst +@@ -118,9 +118,9 @@ Let's walk through: + Simple example from shell + ------------------------- + +-We use the actual session bus for this example. You can use ``dbus-launch`` to +-start a private one as well if you want, but that is not part of the actual +-mocking. ++We use the actual session bus for this example. You can use ++``dbus-run-session`` to start a private one as well if you want, but that is ++not part of the actual mocking. + + So let's start a mock at the D-Bus name ``com.example.Foo`` with an initial + "main" object on path /, with the main D-Bus interface +diff --git a/dbusmock/testcase.py b/dbusmock/testcase.py +index 825c61f..49787e2 100644 +--- a/dbusmock/testcase.py ++++ b/dbusmock/testcase.py +@@ -97,16 +97,18 @@ def start_dbus(klass, conf=None): + Normally you do not need to call this directly. Use start_system_bus() + and start_session_bus() instead. + ''' +- argv = ['dbus-launch'] ++ argv = ['dbus-daemon', '--fork', '--print-address=1', '--print-pid=1'] + if conf: + argv.append('--config-file=' + conf) +- out = subprocess.check_output(argv, universal_newlines=True) +- variables = {} +- for line in out.splitlines(): +- (k, v) = line.split('=', 1) +- variables[k] = v +- return (int(variables['DBUS_SESSION_BUS_PID']), +- variables['DBUS_SESSION_BUS_ADDRESS']) ++ else: ++ argv.append('--session') ++ lines = subprocess.check_output(argv, universal_newlines=True).strip().splitlines() ++ assert len(lines) == 2, 'expected exactly 2 lines of output from dbus-daemon' ++ # usually the first line is the address, but be lenient and accept any order ++ try: ++ return (int(lines[1]), lines[0]) ++ except ValueError: ++ return (int(lines[0]), lines[1]) + + @classmethod + def stop_dbus(klass, pid): diff --git a/dev-python/dbusmock/metadata.xml b/dev-python/dbusmock/metadata.xml new file mode 100644 index 000000000000..996e7cacd217 --- /dev/null +++ b/dev-python/dbusmock/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>gnome@gentoo.org</email> + <name>Gentoo GNOME Desktop</name> + </maintainer> +</pkgmetadata> |