summaryrefslogtreecommitdiff
path: root/dev-python/dbusmock
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/dbusmock')
-rw-r--r--dev-python/dbusmock/Manifest5
-rw-r--r--dev-python/dbusmock/dbusmock-0.16.9.ebuild46
-rw-r--r--dev-python/dbusmock/files/0.16.9-disable-style-tests.patch14
-rw-r--r--dev-python/dbusmock/files/0.16.9-replace-dbus-launch.patch76
-rw-r--r--dev-python/dbusmock/metadata.xml8
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>