1cb93a386Sopenharmony_ci#!/usr/bin/env python
2cb93a386Sopenharmony_ci# Copyright (c) 2019 The Chromium Authors. All rights reserved.
3cb93a386Sopenharmony_ci# Use of this source code is governed by a BSD-style license that can be
4cb93a386Sopenharmony_ci# found in the LICENSE file.
5cb93a386Sopenharmony_ci
6cb93a386Sopenharmony_ci
7cb93a386Sopenharmony_ci"""Script that generates a page_set for the webpages_playback.py script."""
8cb93a386Sopenharmony_ci
9cb93a386Sopenharmony_ci
10cb93a386Sopenharmony_cifrom __future__ import print_function
11cb93a386Sopenharmony_ciimport jinja2
12cb93a386Sopenharmony_ciimport os
13cb93a386Sopenharmony_ci
14cb93a386Sopenharmony_ci
15cb93a386Sopenharmony_ciPAGE_SET_TEMPLATE = 'page_set_template'
16cb93a386Sopenharmony_ciPAGE_SET_DIR = 'page_sets'
17cb93a386Sopenharmony_ci
18cb93a386Sopenharmony_ci
19cb93a386Sopenharmony_cidef main():
20cb93a386Sopenharmony_ci  created_page_sets = []
21cb93a386Sopenharmony_ci  while True:
22cb93a386Sopenharmony_ci    user_agent = raw_input('user agent? (mobile/desktop/tablet): ')
23cb93a386Sopenharmony_ci    url_name = raw_input('URL name? (eg: google): ')
24cb93a386Sopenharmony_ci    url = raw_input('URL? (eg: http://www.google.com): ')
25cb93a386Sopenharmony_ci    comment = raw_input('Reason for adding the URL? (eg: go/skia-skps-3-2019): ')
26cb93a386Sopenharmony_ci
27cb93a386Sopenharmony_ci    with open(PAGE_SET_TEMPLATE) as f:
28cb93a386Sopenharmony_ci      t = jinja2.Template(f.read())
29cb93a386Sopenharmony_ci    subs = {
30cb93a386Sopenharmony_ci      'user_agent': user_agent,
31cb93a386Sopenharmony_ci      'url_name': url_name,
32cb93a386Sopenharmony_ci      'url': url,
33cb93a386Sopenharmony_ci      'comment': comment,
34cb93a386Sopenharmony_ci    }
35cb93a386Sopenharmony_ci
36cb93a386Sopenharmony_ci    page_set_name = 'skia_%s_%s.py' % (url_name, user_agent)
37cb93a386Sopenharmony_ci    page_set_path = os.path.join(PAGE_SET_DIR, page_set_name)
38cb93a386Sopenharmony_ci    with open(page_set_path, 'w') as f:
39cb93a386Sopenharmony_ci      f.write(t.render(**subs))
40cb93a386Sopenharmony_ci    created_page_sets.append(page_set_path)
41cb93a386Sopenharmony_ci    print('\nPage set has been created in %s\n\n' % page_set_path)
42cb93a386Sopenharmony_ci
43cb93a386Sopenharmony_ci    keep_going = raw_input('Do you have more page sets to create? (y/n)')
44cb93a386Sopenharmony_ci    if keep_going != 'y':
45cb93a386Sopenharmony_ci      break
46cb93a386Sopenharmony_ci
47cb93a386Sopenharmony_ci  print('\n\nSummarizing all created page sets:')
48cb93a386Sopenharmony_ci  for page_set_path in created_page_sets:
49cb93a386Sopenharmony_ci    print('* %s' % page_set_path)
50cb93a386Sopenharmony_ci
51cb93a386Sopenharmony_ci
52cb93a386Sopenharmony_ciif __name__ == '__main__':
53cb93a386Sopenharmony_ci  main()
54