[U-Boot] [PATCH 16/26] binman: Set up 'entry' to permit full test coverage
Simon Glass
sjg at chromium.org
Mon Nov 13 04:52:20 UTC 2017
There is a little check at the top of entry.py which decides if importlib
is available. At present this has no test coverage. To add this we will
need to import the module twice, once with importlib and once without.
In preparation for allowing a test to control the importing of this
module, remove all global imports of the 'entry' module.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
tools/binman/entry_test.py | 4 ++--
tools/binman/ftest.py | 4 +++-
tools/binman/image.py | 7 +++++--
3 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/tools/binman/entry_test.py b/tools/binman/entry_test.py
index 8a9ae017f03..85c4196892f 100644
--- a/tools/binman/entry_test.py
+++ b/tools/binman/entry_test.py
@@ -9,16 +9,16 @@
import collections
import unittest
-import entry
-
class TestEntry(unittest.TestCase):
def testEntryContents(self):
"""Test the Entry bass class"""
+ import entry
base_entry = entry.Entry(None, None, None, read_node=False)
self.assertEqual(True, base_entry.ObtainContents())
def testUnknownEntry(self):
"""Test that unknown entry types are detected"""
+ import entry
Node = collections.namedtuple('Node', ['name', 'path'])
node = Node('invalid-name', 'invalid-path')
with self.assertRaises(ValueError) as e:
diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py
index c4207ce5d29..eae1ab1c4b1 100644
--- a/tools/binman/ftest.py
+++ b/tools/binman/ftest.py
@@ -20,7 +20,6 @@ import binman
import cmdline
import command
import control
-import entry
import fdt
import fdt_util
import tools
@@ -56,6 +55,9 @@ class TestFunctional(unittest.TestCase):
"""
@classmethod
def setUpClass(self):
+ global entry
+ import entry
+
# Handle the case where argv[0] is 'python'
self._binman_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
self._binman_pathname = os.path.join(self._binman_dir, 'binman')
diff --git a/tools/binman/image.py b/tools/binman/image.py
index 07fc9306659..24c4f6f578a 100644
--- a/tools/binman/image.py
+++ b/tools/binman/image.py
@@ -9,8 +9,6 @@
from collections import OrderedDict
from operator import attrgetter
-import entry
-from entry import Entry
import fdt_util
import tools
@@ -48,6 +46,11 @@ class Image:
_entries: OrderedDict() of entries
"""
def __init__(self, name, node):
+ global entry
+ global Entry
+ import entry
+ from entry import Entry
+
self._node = node
self._name = name
self._size = None
--
2.15.0.448.gf294e3d99a-goog
More information about the U-Boot
mailing list