diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-11-13 02:20:05 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-11-13 02:20:05 +0000 |
commit | cec5bc676dfc0ade1b32f3873e93a3bd2c30e390 (patch) | |
tree | 77dc031614745bb406dbd90cea9a082a1b5cdd54 /llvm_tools/test_helpers.py | |
parent | 773bb66b7b5fab0b5f14d66455274040063e14bf (diff) | |
parent | 517424dcc11380511bc34f4a081f119104ff9e80 (diff) | |
download | toolchain-utils-cec5bc676dfc0ade1b32f3873e93a3bd2c30e390.tar.gz |
Snap for 9286410 from 517424dcc11380511bc34f4a081f119104ff9e80 to udc-d1-releaseandroid-14.0.0_r9android-14.0.0_r8android-14.0.0_r7android-14.0.0_r6android-14.0.0_r5android-14.0.0_r4android-14.0.0_r3android-14.0.0_r12android-14.0.0_r11android-14.0.0_r10android14-d1-s7-releaseandroid14-d1-s6-releaseandroid14-d1-s5-releaseandroid14-d1-s4-releaseandroid14-d1-s3-releaseandroid14-d1-s2-releaseandroid14-d1-s1-releaseandroid14-d1-release
Change-Id: I0dfd9fe9a88cd3daf076b0fb77b69e3138c08e6c
Diffstat (limited to 'llvm_tools/test_helpers.py')
-rw-r--r-- | llvm_tools/test_helpers.py | 97 |
1 files changed, 48 insertions, 49 deletions
diff --git a/llvm_tools/test_helpers.py b/llvm_tools/test_helpers.py index 99448181..67d88d9f 100644 --- a/llvm_tools/test_helpers.py +++ b/llvm_tools/test_helpers.py @@ -1,89 +1,88 @@ # -*- coding: utf-8 -*- -# Copyright 2019 The Chromium OS Authors. All rights reserved. +# Copyright 2019 The ChromiumOS Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """Helper functions for unit testing.""" -from __future__ import print_function from contextlib import contextmanager -from tempfile import mkstemp import json import os +from tempfile import mkstemp class ArgsOutputTest(object): - """Testing class to simulate a argument parser object.""" + """Testing class to simulate a argument parser object.""" - def __init__(self, svn_option='google3'): - self.chroot_path = '/abs/path/to/chroot' - self.last_tested = '/abs/path/to/last_tested_file.json' - self.llvm_version = svn_option - self.verbose = False - self.extra_change_lists = None - self.options = ['latest-toolchain'] - self.builders = ['some-builder'] + def __init__(self, svn_option="google3"): + self.chroot_path = "/abs/path/to/chroot" + self.last_tested = "/abs/path/to/last_tested_file.json" + self.llvm_version = svn_option + self.verbose = False + self.extra_change_lists = None + self.options = ["latest-toolchain"] + self.builders = ["some-builder"] # FIXME: Migrate modules with similar helper to use this module. def CallCountsToMockFunctions(mock_function): - """A decorator that passes a call count to the function it decorates. + """A decorator that passes a call count to the function it decorates. - Examples: - @CallCountsToMockFunctions - def foo(call_count): - return call_count - ... - ... - [foo(), foo(), foo()] - [0, 1, 2] - """ + Examples: + @CallCountsToMockFunctions + def foo(call_count): + return call_count + ... + ... + [foo(), foo(), foo()] + [0, 1, 2] + """ - counter = [0] + counter = [0] - def Result(*args, **kwargs): - # For some values of `counter`, the mock function would simulate raising - # an exception, so let the test case catch the exception via - # `unittest.TestCase.assertRaises()` and to also handle recursive functions. - prev_counter = counter[0] - counter[0] += 1 + def Result(*args, **kwargs): + # For some values of `counter`, the mock function would simulate raising + # an exception, so let the test case catch the exception via + # `unittest.TestCase.assertRaises()` and to also handle recursive functions. + prev_counter = counter[0] + counter[0] += 1 - ret_value = mock_function(prev_counter, *args, **kwargs) + ret_value = mock_function(prev_counter, *args, **kwargs) - return ret_value + return ret_value - return Result + return Result def WritePrettyJsonFile(file_name, json_object): - """Writes the contents of the file to the json object. + """Writes the contents of the file to the json object. - Args: - file_name: The file that has contents to be used for the json object. - json_object: The json object to write to. - """ + Args: + file_name: The file that has contents to be used for the json object. + json_object: The json object to write to. + """ - json.dump(file_name, json_object, indent=4, separators=(',', ': ')) + json.dump(file_name, json_object, indent=4, separators=(",", ": ")) def CreateTemporaryJsonFile(): - """Makes a temporary .json file.""" + """Makes a temporary .json file.""" - return CreateTemporaryFile(suffix='.json') + return CreateTemporaryFile(suffix=".json") @contextmanager -def CreateTemporaryFile(suffix=''): - """Makes a temporary file.""" +def CreateTemporaryFile(suffix=""): + """Makes a temporary file.""" - fd, temp_file_path = mkstemp(suffix=suffix) + fd, temp_file_path = mkstemp(suffix=suffix) - os.close(fd) + os.close(fd) - try: - yield temp_file_path + try: + yield temp_file_path - finally: - if os.path.isfile(temp_file_path): - os.remove(temp_file_path) + finally: + if os.path.isfile(temp_file_path): + os.remove(temp_file_path) |