Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5869)

Unified Diff: chrome/test/mini_installer/test_installer.py

Issue 433023002: Write empty json results for component builds. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/mini_installer/test_installer.py
diff --git a/chrome/test/mini_installer/test_installer.py b/chrome/test/mini_installer/test_installer.py
index b793333d45ce9efa5f36263e3f7526dae37f87d6..2ce2dd9d451d64be2e6e9b3a00d6f873ba734d25 100644
--- a/chrome/test/mini_installer/test_installer.py
+++ b/chrome/test/mini_installer/test_installer.py
@@ -232,40 +232,6 @@ def ParseConfigFile(filename):
return config
-def RunTests(mini_installer_path, config, force_clean, verbosity,
- json_output_path, tests):
- """Tests the installer using the given Config object.
-
- Args:
- mini_installer_path: The path to mini_installer.exe.
- config: A Config object.
- force_clean: A boolean indicating whether to force cleaning existing
- installations.
- verbosity: Verbosity level for the test runner (0..n).
- json_output_path: Path to JSON output file.
- tests: List of tests to run. All tests are run if omitted.
-
- Returns:
- True if all the tests passed, or False otherwise.
- """
- suite = unittest.TestSuite()
- variable_expander = VariableExpander(mini_installer_path)
- RunCleanCommand(force_clean, variable_expander)
- for test in config.tests:
- # If tests were specified via |tests|, their names are formatted like this:
- test_name = '%s.%s.%s' % (InstallerTest.__module__, InstallerTest.__name__,
- test['name'])
- if not tests or test_name in tests:
- suite.addTest(InstallerTest(test['name'], test['traversal'], config,
- variable_expander))
- result = unittest.TextTestRunner(verbosity=(verbosity + 1)).run(suite)
- if json_output_path:
- with open(json_output_path, 'w') as fp:
- json.dump(_FullResults(suite, result, {}), fp, indent=2)
- fp.write("\n")
- return result.wasSuccessful()
-
-
def IsComponentBuild(mini_installer_path):
""" Invokes the mini_installer asking whether it is a component build.
@@ -306,18 +272,34 @@ def main():
assert os.path.exists(mini_installer_path), ('Could not find file %s' %
mini_installer_path)
+ suite = unittest.TestSuite()
+
# Set the env var used by mini_installer.exe to decide to not show UI.
os.environ['MINI_INSTALLER_TEST'] = '1'
- if IsComponentBuild(mini_installer_path):
+ is_component_build = IsComponentBuild(mini_installer_path)
+ if not is_component_build:
+ config = ParseConfigFile(args.config)
+
+ variable_expander = VariableExpander(mini_installer_path)
+ RunCleanCommand(args.force_clean, variable_expander)
+ for test in config.tests:
+ # If tests were specified via |tests|, their names are formatted like so:
+ test_name = '%s.%s.%s' % (InstallerTest.__module__,
+ InstallerTest.__name__,
+ test['name'])
+ if not args.test or test_name in args.test:
+ suite.addTest(InstallerTest(test['name'], test['traversal'], config,
+ variable_expander))
+
+ result = unittest.TextTestRunner(verbosity=(args.verbose + 1)).run(suite)
+ if is_component_build:
print ('Component build is currently unsupported by the mini_installer: '
'http://crbug.com/377839')
- return 0
-
- config = ParseConfigFile(args.config)
- if not RunTests(mini_installer_path, config, args.force_clean, args.verbose,
- args.write_full_results_to, args.test):
- return 1
- return 0
+ if args.write_full_results_to:
+ with open(args.write_full_results_to, 'w') as fp:
+ json.dump(_FullResults(suite, result, {}), fp, indent=2)
+ fp.write("\n")
+ return 0 if result.wasSuccessful() else 1
# TODO(dpranke): Find a way for this to be shared with the mojo and other tests.
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698