16e274c73cfc01a39638293c6f914262776d6256dDaniel Erat#!/usr/bin/python
26e274c73cfc01a39638293c6f914262776d6256dDaniel Erat#
36e274c73cfc01a39638293c6f914262776d6256dDaniel Erat# Copyright 2016 The Chromium OS Authors. All rights reserved.
46e274c73cfc01a39638293c6f914262776d6256dDaniel Erat# Use of this source code is governed by a BSD-style license that can be
56e274c73cfc01a39638293c6f914262776d6256dDaniel Erat# found in the LICENSE file.
66e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
76e274c73cfc01a39638293c6f914262776d6256dDaniel Erat'''Make Chrome automatically log in.'''
86e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
96e274c73cfc01a39638293c6f914262776d6256dDaniel Erat# This sets up import paths for autotest.
106e274c73cfc01a39638293c6f914262776d6256dDaniel Eratimport common
116e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
126e274c73cfc01a39638293c6f914262776d6256dDaniel Eratimport argparse
136e274c73cfc01a39638293c6f914262776d6256dDaniel Eratimport sys
146e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
156e274c73cfc01a39638293c6f914262776d6256dDaniel Eratfrom autotest_lib.client.common_lib.cros import chrome
166e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
176e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
186e274c73cfc01a39638293c6f914262776d6256dDaniel Eratdef main(args):
196e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    '''The main function.
206e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
216e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    @param args: list of string args passed to program
226e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    '''
236e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
246e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    parser = argparse.ArgumentParser(description=__doc__)
256e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    parser.add_argument('-a', '--arc', action='store_true',
266e274c73cfc01a39638293c6f914262776d6256dDaniel Erat                        help='Enable ARC and wait for it to start.')
27dac88ce5c3c7ae44c9811d3d2b9d67f225867c15Ilja H. Friedel    parser.add_argument('-d', '--dont_override_profile', action='store_true',
28dac88ce5c3c7ae44c9811d3d2b9d67f225867c15Ilja H. Friedel                        help='Keep files from previous sessions.')
296e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    args = parser.parse_args(args)
306e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
316e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    # Avoid calling close() on the Chrome object; this keeps the session active.
32dac88ce5c3c7ae44c9811d3d2b9d67f225867c15Ilja H. Friedel    chrome.Chrome(
33dac88ce5c3c7ae44c9811d3d2b9d67f225867c15Ilja H. Friedel        arc_mode=('enabled' if args.arc else None),
34dac88ce5c3c7ae44c9811d3d2b9d67f225867c15Ilja H. Friedel        dont_override_profile=args.dont_override_profile)
356e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
366e274c73cfc01a39638293c6f914262776d6256dDaniel Erat
376e274c73cfc01a39638293c6f914262776d6256dDaniel Eratif __name__ == '__main__':
386e274c73cfc01a39638293c6f914262776d6256dDaniel Erat    sys.exit(main(sys.argv[1:]))
39