python3-dbusmock: re-add recipe and fix patch path

Running the "non-gpl3" builder in my local autobuilder fails
almost immediately because python3-dbusmock is not available. It
appears that during the creation of meta-python2 and cleanup of
meta-python that the recipe for python3-dbusmock got removed
entirely, so I've re-added it, and renamed the corresponding
patch folder so that it can find the patches listed in the
recipe.

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Trevor Gamblin
2020-05-12 17:51:31 -04:00
committed by Khem Raj
parent b80664c82b
commit 0acb9d90bc
3 changed files with 25 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
From c4436fd42f2936e5fb0f95434d06e45aa9959ca0 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] 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 8a482ab..3d5d71a 100644
--- a/dbusmock/__init__.py
+++ b/dbusmock/__init__.py
@@ -14,8 +14,8 @@ __license__ = 'LGPL 3+'
__version__ = '0.16.7'
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 586dbad..e4f130f 100644
--- a/dbusmock/mockobject.py
+++ b/dbusmock/mockobject.py
@@ -688,6 +688,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'''

View File

@@ -0,0 +1,27 @@
From 03bd5cb77c54033857810bb17562859eefa41221 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] 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 e4f130f..389df70 100644
--- a/dbusmock/mockobject.py
+++ b/dbusmock/mockobject.py
@@ -46,6 +46,9 @@ def load_module(name):
exec(f.read(), mod.__dict__, mod.__dict__)
return mod
+ if '.' in name:
+ return importlib.import_module(name)
+
return importlib.import_module('dbusmock.templates.' + name)