Re: [U-Boot] [PATCH v3 10/18] buildman: Avoid looking at config file or toolchains in tests

2014-09-10 Thread Simon Glass
Applied to u-boot-x86/buildman.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH v3 10/18] buildman: Avoid looking at config file or toolchains in tests

2014-09-05 Thread Simon Glass
These files may not exist in the environment, or may not be suitable for
testing. Provide our own config file and our own toolchains when running
tests.

Signed-off-by: Simon Glass s...@chromium.org
---

Changes in v3: None
Changes in v2: None

 tools/buildman/bsettings.py | 15 ++-
 tools/buildman/func_test.py | 19 +++
 2 files changed, 29 insertions(+), 5 deletions(-)

diff --git a/tools/buildman/bsettings.py b/tools/buildman/bsettings.py
index 9164798..fdd875b 100644
--- a/tools/buildman/bsettings.py
+++ b/tools/buildman/bsettings.py
@@ -5,6 +5,7 @@
 
 import ConfigParser
 import os
+import StringIO
 
 
 def Setup(fname=''):
@@ -17,11 +18,15 @@ def Setup(fname=''):
 global config_fname
 
 settings = ConfigParser.SafeConfigParser()
-config_fname = fname
-if config_fname == '':
-config_fname = '%s/.buildman' % os.getenv('HOME')
-if config_fname:
-settings.read(config_fname)
+if fname is not None:
+config_fname = fname
+if config_fname == '':
+config_fname = '%s/.buildman' % os.getenv('HOME')
+if config_fname:
+settings.read(config_fname)
+
+def AddFile(data):
+settings.readfp(StringIO.StringIO(data))
 
 def GetItems(section):
 Get the items from a section of the config.
diff --git a/tools/buildman/func_test.py b/tools/buildman/func_test.py
index 8711f9c..b92cde3 100644
--- a/tools/buildman/func_test.py
+++ b/tools/buildman/func_test.py
@@ -10,6 +10,7 @@ import sys
 import tempfile
 import unittest
 
+import bsettings
 import cmdline
 import command
 import control
@@ -17,6 +18,22 @@ import gitutil
 import terminal
 import toolchain
 
+settings_data = '''
+# Buildman settings file
+
+[toolchain]
+
+[toolchain-alias]
+
+[make-flags]
+src=/home/sjg/c/src
+chroot=/home/sjg/c/chroot
+vboot=USE_STDINT=1 VBOOT_DEBUG=1 MAKEFLAGS_VBOOT=DEBUG=1 
CFLAGS_EXTRA_VBOOT=-DUNROLL_LOOPS VBOOT_SOURCE=${src}/platform/vboot_reference
+chromeos_coreboot=VBOOT=${chroot}/build/link/usr ${vboot}
+chromeos_daisy=VBOOT=${chroot}/build/daisy/usr ${vboot}
+chromeos_peach=VBOOT=${chroot}/build/peach_pit/usr ${vboot}
+'''
+
 class TestFunctional(unittest.TestCase):
 Functional test for buildman.
 
@@ -36,6 +53,8 @@ class TestFunctional(unittest.TestCase):
 command.test_result = self._HandleCommand
 self._toolchains = toolchain.Toolchains()
 self._toolchains.Add('gcc', test=False)
+bsettings.Setup(None)
+bsettings.AddFile(settings_data)
 
 def tearDown(self):
 shutil.rmtree(self._base_dir)
-- 
2.1.0.rc2.206.gedb03e5

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot