summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtools/binman/binman.py8
-rw-r--r--tools/binman/entry_test.py30
2 files changed, 36 insertions, 2 deletions
diff --git a/tools/binman/binman.py b/tools/binman/binman.py
index 963d43a376..cf83edfd04 100755
--- a/tools/binman/binman.py
+++ b/tools/binman/binman.py
@@ -44,8 +44,12 @@ def RunTests():
suite.run(result)
sys.argv = [sys.argv[0]]
- for module in (ftest.TestFunctional, fdt_test.TestFdt,
- entry_test.TestEntry):
+
+ # Run the entry tests first ,since these need to be the first to import the
+ # 'entry' module.
+ suite = unittest.TestLoader().loadTestsFromTestCase(entry_test.TestEntry)
+ suite.run(result)
+ for module in (ftest.TestFunctional, fdt_test.TestFdt):
suite = unittest.TestLoader().loadTestsFromTestCase(module)
suite.run(result)
diff --git a/tools/binman/entry_test.py b/tools/binman/entry_test.py
index 85c4196892..789b26fd9f 100644
--- a/tools/binman/entry_test.py
+++ b/tools/binman/entry_test.py
@@ -7,9 +7,39 @@
# Test for the Entry class
import collections
+import os
+import sys
import unittest
+import fdt
+import fdt_util
+import tools
+
class TestEntry(unittest.TestCase):
+ def GetNode(self):
+ binman_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
+ tools.PrepareOutputDir(None)
+ fname = fdt_util.EnsureCompiled(
+ os.path.join(binman_dir,('test/05_simple.dts')))
+ dtb = fdt.FdtScan(fname)
+ return dtb.GetNode('/binman/u-boot')
+
+ def test1EntryNoImportLib(self):
+ """Test that we can import Entry subclassess successfully"""
+
+ sys.modules['importlib'] = None
+ global entry
+ import entry
+ entry.Entry.Create(None, self.GetNode(), 'u-boot')
+
+ def test2EntryImportLib(self):
+ del sys.modules['importlib']
+ global entry
+ reload(entry)
+ entry.Entry.Create(None, self.GetNode(), 'u-boot-spl')
+ tools._RemoveOutputDir()
+ del entry
+
def testEntryContents(self):
"""Test the Entry bass class"""
import entry