mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-06-08 20:29:36 +00:00
45 lines
1.7 KiB
Python
45 lines
1.7 KiB
Python
import os
|
|
import json
|
|
|
|
|
|
def writeConfigFile(obj, vals):
|
|
data = dict((opt, obj[opt]) for opt in (vals or obj.keys()))
|
|
return json.dumps(data)
|
|
|
|
|
|
def generateTalosConfig(command_line, browser_config, test_config, pid=None):
|
|
bcontroller_vars = ['command', 'child_process', 'process', 'browser_wait',
|
|
'test_timeout', 'browser_path', 'error_filename']
|
|
|
|
if 'xperf_path' in browser_config:
|
|
bcontroller_vars.append('xperf_path')
|
|
bcontroller_vars.extend(['buildid', 'sourcestamp', 'repository',
|
|
'title'])
|
|
if 'name' in test_config:
|
|
bcontroller_vars.append('testname')
|
|
browser_config['testname'] = test_config['name']
|
|
|
|
browser_config['command'] = ' '.join(command_line)
|
|
|
|
if (('xperf_providers' in test_config) and
|
|
('xperf_user_providers' in test_config) and
|
|
('xperf_stackwalk' in test_config)): # noqa
|
|
|
|
print "extending with xperf!"
|
|
browser_config['xperf_providers'] = test_config['xperf_providers']
|
|
browser_config['xperf_user_providers'] = \
|
|
test_config['xperf_user_providers']
|
|
browser_config['xperf_stackwalk'] = test_config['xperf_stackwalk']
|
|
browser_config['processID'] = pid
|
|
browser_config['approot'] = \
|
|
os.path.dirname(browser_config['browser_path'])
|
|
bcontroller_vars.extend(['xperf_providers', 'xperf_user_providers',
|
|
'xperf_stackwalk', 'processID', 'approot'])
|
|
|
|
content = writeConfigFile(browser_config, bcontroller_vars)
|
|
|
|
with open(browser_config['bcontroller_config'], "w") as fhandle:
|
|
fhandle.write(content)
|
|
|
|
return content
|