aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2014-12-18 13:13:05 +0100
committerMartin Jansa <Martin.Jansa@gmail.com>2014-12-19 20:10:59 +0100
commite8db5b2cbd5778b9f0ce193c65573cce23de2f04 (patch)
tree0ce547fa3f5facce299be5472203615674650ca1
parentc35fdeac8b31ba5df6ff51847b04fbde990f9858 (diff)
downloadmeta-python2-e8db5b2cbd5778b9f0ce193c65573cce23de2f04.tar.gz
python-dbusmock: import from meta-webos-ports
(From meta-openembedded commit: 67c5f319b18a3728776dc1b8bb580d79164bdbd3) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Tim Orling <ticotimo@gmail.com>
-rw-r--r--recipes-devtools/python/python-dbusmock/0001-Add-functionality-to-add-own-objects-to-internal-obj.patch53
-rw-r--r--recipes-devtools/python/python-dbusmock/0001-Don-t-use-gobject-introspection-for-bindings.patch29
-rw-r--r--recipes-devtools/python/python-dbusmock/0002-Add-possibility-to-import-templates-from-packages.patch29
-rw-r--r--recipes-devtools/python/python-dbusmock_0.10.1.bb22
4 files changed, 133 insertions, 0 deletions
diff --git a/recipes-devtools/python/python-dbusmock/0001-Add-functionality-to-add-own-objects-to-internal-obj.patch b/recipes-devtools/python/python-dbusmock/0001-Add-functionality-to-add-own-objects-to-internal-obj.patch
new file mode 100644
index 0000000..fdd00b6
--- /dev/null
+++ b/recipes-devtools/python/python-dbusmock/0001-Add-functionality-to-add-own-objects-to-internal-obj.patch
@@ -0,0 +1,53 @@
+From eebe0f66435c4d821b0f5f93f69efe17b4a384c2 Mon Sep 17 00:00:00 2001
+From: Simon Busch <simon.busch@lge.com>
+Date: Wed, 9 Apr 2014 13:18:33 +0200
+Subject: [PATCH 1/2] Add functionality to add own objects to internal object
+ list
+
+In some case the tests might want to create dynamically dbus objects which extended
+functionality from own class definitions within templates. In such cases we need to
+register those objects with the internal object manager of dbusmock.
+
+Signed-off-by: Simon Busch <simon.busch@lge.com>
+---
+ dbusmock/__init__.py | 4 ++--
+ dbusmock/mockobject.py | 8 ++++++++
+ 2 files changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/dbusmock/__init__.py b/dbusmock/__init__.py
+index f799cc7..6718c06 100644
+--- a/dbusmock/__init__.py
++++ b/dbusmock/__init__.py
+@@ -14,8 +14,8 @@ __license__ = 'LGPL 3+'
+ __version__ = '0.10.1'
+
+ from dbusmock.mockobject import (DBusMockObject, MOCK_IFACE,
+- OBJECT_MANAGER_IFACE, get_object, get_objects)
++ OBJECT_MANAGER_IFACE, get_object, get_objects, add_object)
+ from dbusmock.testcase import DBusTestCase
+
+ __all__ = ['DBusMockObject', 'MOCK_IFACE', 'OBJECT_MANAGER_IFACE',
+- 'DBusTestCase', 'get_object', 'get_objects']
++ 'DBusTestCase', 'get_object', 'get_objects', 'add_object']
+diff --git a/dbusmock/mockobject.py b/dbusmock/mockobject.py
+index 97b79ce..a98e03d 100644
+--- a/dbusmock/mockobject.py
++++ b/dbusmock/mockobject.py
+@@ -682,6 +682,14 @@ dbus.service._method_lookup = _dbusmock_method_lookup
+ # Helper API for templates
+ #
+
++def add_object(path, obj):
++ if path in objects:
++ raise dbus.exceptions.DBusException(
++ 'org.freedesktop.DBus.Mock.NameError',
++ 'object %s already exists' % path)
++
++ objects[path] = obj
++
+
+ def get_objects():
+ '''Return all existing object paths'''
+--
+1.7.9.5
+
diff --git a/recipes-devtools/python/python-dbusmock/0001-Don-t-use-gobject-introspection-for-bindings.patch b/recipes-devtools/python/python-dbusmock/0001-Don-t-use-gobject-introspection-for-bindings.patch
new file mode 100644
index 0000000..f3ab53c
--- /dev/null
+++ b/recipes-devtools/python/python-dbusmock/0001-Don-t-use-gobject-introspection-for-bindings.patch
@@ -0,0 +1,29 @@
+From 29960f2fce7ab42ed0a1bf8ce96499fdb6eedf3c Mon Sep 17 00:00:00 2001
+From: Simon Busch <simon.busch@lge.com>
+Date: Tue, 25 Mar 2014 15:28:54 +0100
+Subject: [PATCH] Don't use gobject introspection for bindings
+
+In our environment we're not providing the glib python bindings through
+introspection but just pygobject so we need to use the right import.
+
+Signed-off-by: Simon Busch <simon.busch@lge.com>
+---
+ dbusmock/__main__.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dbusmock/__main__.py b/dbusmock/__main__.py
+index 44b63fb..bfd089c 100644
+--- a/dbusmock/__main__.py
++++ b/dbusmock/__main__.py
+@@ -51,7 +51,7 @@ def parse_args():
+
+ if __name__ == '__main__':
+ import dbus.mainloop.glib
+- from gi.repository import GLib
++ import glib as GLib
+
+ args = parse_args()
+ dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
+--
+1.7.9.5
+
diff --git a/recipes-devtools/python/python-dbusmock/0002-Add-possibility-to-import-templates-from-packages.patch b/recipes-devtools/python/python-dbusmock/0002-Add-possibility-to-import-templates-from-packages.patch
new file mode 100644
index 0000000..981694f
--- /dev/null
+++ b/recipes-devtools/python/python-dbusmock/0002-Add-possibility-to-import-templates-from-packages.patch
@@ -0,0 +1,29 @@
+From ff1dffd5673bcd2cbd9554ad62476d108dbc18af Mon Sep 17 00:00:00 2001
+From: Simon Busch <simon.busch@lge.com>
+Date: Wed, 9 Apr 2014 13:20:33 +0200
+Subject: [PATCH 2/2] Add possibility to import templates from packages
+
+Does not have any unit tests yet.
+
+Signed-off-by: Simon Busch <simon.busch@lge.com>
+---
+ dbusmock/mockobject.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/dbusmock/mockobject.py b/dbusmock/mockobject.py
+index a98e03d..9530c2a 100644
+--- a/dbusmock/mockobject.py
++++ b/dbusmock/mockobject.py
+@@ -49,6 +49,9 @@ def load_module(name):
+
+ return module
+
++ if '.' in name:
++ return importlib.import_module(name)
++
+ return importlib.import_module('dbusmock.templates.' + name)
+
+
+--
+1.7.9.5
+
diff --git a/recipes-devtools/python/python-dbusmock_0.10.1.bb b/recipes-devtools/python/python-dbusmock_0.10.1.bb
new file mode 100644
index 0000000..b247943
--- /dev/null
+++ b/recipes-devtools/python/python-dbusmock_0.10.1.bb
@@ -0,0 +1,22 @@
+# Copyright (c) 2014 LG Electronics, Inc.
+
+SUMMARY = "With this program/Python library you can easily create mock objects on D-Bus"
+AUTHOR = "Martin Pitt <martin.pitt@ubuntu.com>"
+SECTION = "devel/python"
+
+LICENSE = "GPL-3.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+DEPENDS += "python-pygobject python-dbus"
+
+SRC_URI = "https://launchpad.net/${BPN}/trunk/${PV}/+download/${BP}.tar.gz"
+SRC_URI[md5sum] = "7370d325c4a75494dd71885ca65b79e8"
+SRC_URI[sha256sum] = "03aadc93bdc26ea18d4d78fcff7b6cb34f4e18623bc5cc41cf9539d663cee11e"
+
+SRC_URI += " \
+ file://0001-Don-t-use-gobject-introspection-for-bindings.patch \
+ file://0001-Add-functionality-to-add-own-objects-to-internal-obj.patch \
+ file://0002-Add-possibility-to-import-templates-from-packages.patch \
+"
+
+inherit setuptools