aboutsummaryrefslogtreecommitdiff
path: root/binary_search_tool/test
diff options
context:
space:
mode:
authorCassidy Burden <cburden@google.com>2016-06-20 14:19:37 -0700
committerchrome-bot <chrome-bot@chromium.org>2016-06-21 16:02:06 -0700
commit068c5fb61394771043ed39b11cb996cfd9874c83 (patch)
treeec094426c2c64de3df9b6867e978f18952d4a0ac /binary_search_tool/test
parent702bf8793c082c144b57e445694ccc548a90ac21 (diff)
downloadtoolchain-utils-068c5fb61394771043ed39b11cb996cfd9874c83.tar.gz
binary search tool: Add Run method and move Main logic there
Add Run method so that the binary search tool can be easily invoked from other Python scripts (see update to binary_search_tool_tester.py). Now Main only does very basic arg_parse logic and leaves rest up to Run. Test=Unit tests run, cros_pkg tester passes Change-Id: I90400f9223c7aad0a2701944ba8282fb763f1cf7 Reviewed-on: https://chrome-internal-review.googlesource.com/265628 Commit-Ready: Cassidy Burden <cburden@google.com> Tested-by: Cassidy Burden <cburden@google.com> Reviewed-by: Caroline Tice <cmtice@google.com> Reviewed-by: Han Shen <shenhan@google.com>
Diffstat (limited to 'binary_search_tool/test')
-rwxr-xr-xbinary_search_tool/test/binary_search_tool_tester.py49
1 files changed, 35 insertions, 14 deletions
diff --git a/binary_search_tool/test/binary_search_tool_tester.py b/binary_search_tool/test/binary_search_tool_tester.py
index a5123620..5b9c9f85 100755
--- a/binary_search_tool/test/binary_search_tool_tester.py
+++ b/binary_search_tool/test/binary_search_tool_tester.py
@@ -52,32 +52,52 @@ class BisectingUtilsTest(unittest.TestCase):
pass
def runTest(self):
- args = ['--get_initial_items', './gen_init_list.py', '--switch_to_good',
- './switch_to_good.py', '--switch_to_bad', './switch_to_bad.py',
- '--test_script', './is_good.py', '--prune', '--file_args']
- binary_search_state.Main(args)
+ ret = binary_search_state.Run(get_initial_items='./gen_init_list.py',
+ switch_to_good='./switch_to_good.py',
+ switch_to_bad='./switch_to_bad.py',
+ test_script='./is_good.py',
+ prune=True,
+ file_args=True)
+ self.assertEquals(ret, 0)
self.check_output()
- def test_install_script(self):
+ def test_arg_parse(self):
args = ['--get_initial_items', './gen_init_list.py', '--switch_to_good',
'./switch_to_good.py', '--switch_to_bad', './switch_to_bad.py',
'--test_script', './is_good.py', '--prune', '--file_args']
+ ret = binary_search_state.Main(args)
+ self.assertEquals(ret, 0)
+ self.check_output()
+ def test_install_script(self):
os.remove('./installed')
with self.assertRaises(AssertionError):
- binary_search_state.Main(args)
-
- args += ['--install_script', './install.py']
- binary_search_state.Main(args)
+ ret = binary_search_state.Run(get_initial_items='./gen_init_list.py',
+ switch_to_good='./switch_to_good.py',
+ switch_to_bad='./switch_to_bad.py',
+ test_script='./is_good.py',
+ prune=True,
+ file_args=True)
+
+ ret = binary_search_state.Run(get_initial_items='./gen_init_list.py',
+ switch_to_good='./switch_to_good.py',
+ switch_to_bad='./switch_to_bad.py',
+ test_script='./is_good.py',
+ install_script='./install.py',
+ prune=True,
+ file_args=True)
+ self.assertEquals(ret, 0)
self.check_output()
def test_bad_install_script(self):
- args = ['--get_initial_items', './gen_init_list.py', '--switch_to_good',
- './switch_to_good.py', '--switch_to_bad', './switch_to_bad.py',
- '--test_script', './is_good.py', '--prune', '--file_args',
- '--install_script', './install_bad.py']
with self.assertRaises(AssertionError):
- binary_search_state.Main(args)
+ binary_search_state.Run(get_initial_items='./gen_init_list.py',
+ switch_to_good='./switch_to_good.py',
+ switch_to_bad='./switch_to_bad.py',
+ test_script='./is_good.py',
+ install_script='./install_bad.py',
+ prune=True,
+ file_args=True)
def test_bad_save_state(self):
state_file = binary_search_state.STATE_FILE
@@ -167,6 +187,7 @@ def Main(argv):
suite = unittest.TestSuite()
for _ in range(0, num_tests):
suite.addTest(BisectingUtilsTest())
+ suite.addTest(BisectingUtilsTest('test_arg_parse'))
suite.addTest(BisectingUtilsTest('test_install_script'))
suite.addTest(BisectingUtilsTest('test_bad_install_script'))
suite.addTest(BisectingUtilsTest('test_bad_save_state'))