diff options
Diffstat (limited to 'binary_search_tool/test/switch_to_good_set_file.py')
-rwxr-xr-x | binary_search_tool/test/switch_to_good_set_file.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/binary_search_tool/test/switch_to_good_set_file.py b/binary_search_tool/test/switch_to_good_set_file.py new file mode 100755 index 00000000..83777af0 --- /dev/null +++ b/binary_search_tool/test/switch_to_good_set_file.py @@ -0,0 +1,39 @@ +#!/usr/bin/python2 +"""Change portions of the object files to good. + +The "portion" is defined by the file (which is passed as the only argument to +this script) content. Every line in the file is an object index, which will be +set to good (mark as 0). + +This script is meant to be specifically used with the set_file test. This uses +the set files generated by binary_search_state to do the switching. +""" + +from __future__ import print_function + +import os +import sys + +import common + + +def Main(_): + working_set = common.ReadWorkingSet() + + if not os.path.exists(os.environ['BISECT_GOOD_SET']): + print('Good set file does not exist!') + return 1 + + object_index = common.ReadObjectIndex(os.environ['BISECT_GOOD_SET']) + + for oi in object_index: + working_set[int(oi)] = 0 + + common.WriteWorkingSet(working_set) + + return 0 + + +if __name__ == '__main__': + retval = Main(sys.argv) + sys.exit(retval) |