Index: chrome/test/chromedriver/embed_mobile_devices_in_cpp.py |
diff --git a/chrome/test/chromedriver/embed_mobile_devices_in_cpp.py b/chrome/test/chromedriver/embed_mobile_devices_in_cpp.py |
index 2667014c95a5b775bfbf6a6de30163e5f7c0fef5..185ce6261ba096409f50b8596b6951ea7812aaa7 100755 |
--- a/chrome/test/chromedriver/embed_mobile_devices_in_cpp.py |
+++ b/chrome/test/chromedriver/embed_mobile_devices_in_cpp.py |
@@ -12,11 +12,24 @@ will be written to a C-style string to be parsed with JSONReader. |
import optparse |
import os |
+import re |
import sys |
import cpp_source |
+def quotizeKeys(s, keys): |
+ """Returns the string s with each instance of each key wrapped in quotes. |
+ |
+ Args: |
+ s: a string containing keys that need to be wrapped in quotes. |
+ keys: an iterable of keys to be wrapped in quotes in the string. |
+ """ |
+ for key in keys: |
+ s = re.sub('%s: ' % key, '"%s": ' % key, s) |
+ return s |
+ |
+ |
def main(): |
parser = optparse.OptionParser() |
parser.add_option( |
@@ -30,8 +43,10 @@ def main(): |
with open(file_name, 'r') as f: |
for line in f: |
if not inside_list: |
- if 'WebInspector.OverridesUI._phones = [' in line or \ |
- 'WebInspector.OverridesUI._tablets = [' in line: |
+ if 'WebInspector.OverridesUI._phones = [' in line: |
+ inside_list = True |
+ if 'WebInspector.OverridesUI._tablets = [' in line: |
+ devices += ',' |
inside_list = True |
else: |
if line.strip() == '];': |
@@ -39,11 +54,20 @@ def main(): |
continue |
devices += line.strip() |
+ output_dir = 'chrome/test/chromedriver/chrome' |
devices += ']' |
+ devices = quotizeKeys(devices, |
+ ['title', 'width', 'height', 'deviceScaleFactor', |
+ 'userAgent', 'touch', 'mobile']) |
cpp_source.WriteSource('mobile_device_list', |
- 'chrome/test/chromedriver/chrome', |
+ output_dir, |
options.directory, {'kMobileDevices': devices}) |
+ print('\n'.join([ |
+ 'Be sure to format output files:', |
+ ' clang-format -i %s/mobile_device_list.cc' % output_dir, |
+ ' clang-format -i %s/mobile_device_list.h' % output_dir])) |
samuong
2015/01/20 22:02:33
It'd be nice if we could automate this. Can you us
srawlins
2015/01/22 20:15:58
Done.
|
+ |
if __name__ == '__main__': |
sys.exit(main()) |