[gnome-continuous-yocto/gnomeostree-3.28-rocko: 4865/8267] oeqa/core/loader.py: Avoid importing tests with built-ins name
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 4865/8267] oeqa/core/loader.py: Avoid importing tests with built-ins name
- Date: Sun, 17 Dec 2017 02:38:09 +0000 (UTC)
commit 661c73b716aced4728659ac02ab63c83fa232c8c
Author: Mariano Lopez <mariano lopez linux intel com>
Date: Mon Feb 27 07:45:01 2017 +0000
oeqa/core/loader.py: Avoid importing tests with built-ins name
If importing a test with the same name as a built-in module,
it will silently import the built-in and check for tests in
built-in module. This happened with syslog module in debian
based machines, so add a raise to avoid this behavior.
[YOCTO #10978]
(From OE-Core rev: d9548f981448307b042807373e469f0d0b110bfe)
Signed-off-by: Mariano Lopez <mariano lopez linux intel com>
Signed-off-by: Ross Burton <ross burton intel com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/lib/oeqa/core/loader.py | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
---
diff --git a/meta/lib/oeqa/core/loader.py b/meta/lib/oeqa/core/loader.py
index b9ba923..74f1117 100644
--- a/meta/lib/oeqa/core/loader.py
+++ b/meta/lib/oeqa/core/loader.py
@@ -216,6 +216,13 @@ class OETestLoader(unittest.TestLoader):
# use_load_tests deprecation via *args and **kws. See issue 16662.
if sys.version_info >= (3,5):
def loadTestsFromModule(self, module, *args, pattern=None, **kws):
+ """
+ Returns a suite of all tests cases contained in module.
+ """
+ if module.__name__ in sys.builtin_module_names:
+ msg = 'Tried to import %s test module but is a built-in'
+ raise ImportError(msg % module.__name__)
+
if not self.modules or "all" in self.modules or \
module.__name__ in self.modules:
return super(OETestLoader, self).loadTestsFromModule(
@@ -227,6 +234,10 @@ class OETestLoader(unittest.TestLoader):
"""
Returns a suite of all tests cases contained in module.
"""
+ if module.__name__ in sys.builtin_module_names:
+ msg = 'Tried to import %s test module but is a built-in'
+ raise ImportError(msg % module.__name__)
+
if not self.modules or "all" in self.modules or \
module.__name__ in self.modules:
return super(OETestLoader, self).loadTestsFromModule(
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]