blob: 5b941c62a6dc4b02e083ec077fa412caf4fd9139 [file] [log] [blame]
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Switch part of the objects file in working set to (possible) bad ones.
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
from binary_search_tool.test import common
def Main(_):
"""Switch part of the objects file in working set to (possible) bad ones."""
working_set = common.ReadWorkingSet()
objects_file = common.ReadObjectsFile()
if not os.path.exists(os.environ['BISECT_BAD_SET']):
print('Bad set file does not exist!')
return 1
object_index = common.ReadObjectIndex(os.environ['BISECT_BAD_SET'])
for oi in object_index:
working_set[int(oi)] = objects_file[oi]
common.WriteWorkingSet(working_set)
return 0
if __name__ == '__main__':
retval = Main(sys.argv)
sys.exit(retval)