Skip to content

Commit

Permalink
Update auto-gen test config template with PARAMETERIZED_STRINGS
Browse files Browse the repository at this point in the history
placeholder

Bug: 134509111
Test: add "test_mainline_modules: [some.apk]" to TetheringTests,
and build the modules, confirm the parameterized option is added
in the test config.

Change-Id: I0f4f837412075520153d21c9ca12cf5c3f555de7
  • Loading branch information
easoncylee committed May 15, 2020
1 parent e9ab859 commit 9425870
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
1 change: 1 addition & 0 deletions core/instrumentation_test_config_template.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
<configuration description="Runs {LABEL}.">
<option name="test-suite-tag" value="apct" />
<option name="test-suite-tag" value="apct-instrumentation" />
{EXTRA_CONFIGS}
<target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
<option name="cleanup-apks" value="true" />
<option name="test-file-name" value="{MODULE}.apk" />
Expand Down
12 changes: 9 additions & 3 deletions tools/auto_gen_test_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
ATTRIBUTE_PACKAGE = 'package'

PLACEHOLDER_LABEL = '{LABEL}'
PLACEHOLDER_EXTRA_CONFIGS = '{EXTRA_CONFIGS}'
PLACEHOLDER_MODULE = '{MODULE}'
PLACEHOLDER_PACKAGE = '{PACKAGE}'
PLACEHOLDER_RUNNER = '{RUNNER}'
Expand All @@ -41,16 +42,20 @@ def main(argv):
Returns:
0 if no error, otherwise 1.
"""
if len(argv) != 4:
if len(argv) != 4 and len(argv) != 6:
sys.stderr.write(
'Invalid arguements. The script requires 4 arguments for file paths: '
'Invalid arguments. The script requires 4 arguments for file paths: '
'target_config android_manifest empty_config '
'instrumentation_test_config_template.\n')
'instrumentation_test_config_template '
'and 2 optional arguments for extra configs: '
'--extra-configs \'EXTRA_CONFIGS\'.\n')
return 1

target_config = argv[0]
android_manifest = argv[1]
empty_config = argv[2]
instrumentation_test_config_template = argv[3]
extra_configs = '\n'.join(argv[5].split('\\n')) if len(argv) == 6 else ''

manifest = parse(android_manifest)
instrumentation_elements = manifest.getElementsByTagName('instrumentation')
Expand Down Expand Up @@ -80,6 +85,7 @@ def main(argv):
config = config.replace(PLACEHOLDER_MODULE, module)
config = config.replace(PLACEHOLDER_PACKAGE, package)
config = config.replace(PLACEHOLDER_TEST_TYPE, test_type)
config = config.replace(PLACEHOLDER_EXTRA_CONFIGS, extra_configs)
config = config.replace(PLACEHOLDER_RUNNER, runner)
with open(target_config, 'w') as config_file:
config_file.write(config)
Expand Down

0 comments on commit 9425870

Please sign in to comment.