mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
binman: Tidy up _SetupDtb() to use its own temporary file
At present EnsureCompiled() uses an file from the 'output' directory (in the tools module) when compiling the device tree. This is fine in most cases, allowing useful inspection of the output files from binman. However in functional tests, _SetupDtb() creates an output directory and immediately removes it afterwards. This serves no benefit and just confuses things, since the 'official' output directory is supposed to be created and destroyed in control.Binman(). Add a new parameter for the optional temporary directory to use, and use a separate temporary directory in _SetupDtb(). Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
02fd463cfe
commit
a004f29464
3 changed files with 28 additions and 7 deletions
|
@ -9,7 +9,9 @@ from __future__ import print_function
|
|||
from optparse import OptionParser
|
||||
import glob
|
||||
import os
|
||||
import shutil
|
||||
import sys
|
||||
import tempfile
|
||||
import unittest
|
||||
|
||||
# Bring in the patman libraries
|
||||
|
@ -540,10 +542,23 @@ class TestFdtUtil(unittest.TestCase):
|
|||
self.assertEqual(0x12345678, fdt_util.fdt_cells_to_cpu(val, 1))
|
||||
|
||||
def testEnsureCompiled(self):
|
||||
"""Test a degenerate case of this function"""
|
||||
"""Test a degenerate case of this function (file already compiled)"""
|
||||
dtb = fdt_util.EnsureCompiled('tools/dtoc/dtoc_test_simple.dts')
|
||||
self.assertEqual(dtb, fdt_util.EnsureCompiled(dtb))
|
||||
|
||||
def testEnsureCompiledTmpdir(self):
|
||||
"""Test providing a temporary directory"""
|
||||
try:
|
||||
old_outdir = tools.outdir
|
||||
tools.outdir= None
|
||||
tmpdir = tempfile.mkdtemp(prefix='test_fdt.')
|
||||
dtb = fdt_util.EnsureCompiled('tools/dtoc/dtoc_test_simple.dts',
|
||||
tmpdir)
|
||||
self.assertEqual(tmpdir, os.path.dirname(dtb))
|
||||
shutil.rmtree(tmpdir)
|
||||
finally:
|
||||
tools.outdir= old_outdir
|
||||
|
||||
|
||||
def RunTestCoverage():
|
||||
"""Run the tests and check that we get 100% coverage"""
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue