[refactor] More post-NSS WebCrypto cleanups (utility functions).
[chromium-blink-merge.git] / tools / perf / page_sets / login_helpers / google_login.py
bloba59b2c669a6275e4d19556bf7da215eb796fbde9
1 # Copyright 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4 from page_sets.login_helpers import login_utils
7 def LoginGoogleAccount(action_runner, credential,
8 credentials_path=login_utils.DEFAULT_CREDENTIAL_PATH):
9 """Logs in into Google account.
11 This function navigates the tab into Google's login page and logs in a user
12 using credentials in |credential| part of the |credentials_path| file.
14 Args:
15 action_runner: Action runner responsible for running actions on the page.
16 credential: The credential to retrieve from the credentials file
17 (type string).
18 credentials_path: The string that specifies the path to credential file.
20 Raises:
21 exceptions.Error: See ExecuteJavaScript()
22 for a detailed list of possible exceptions.
23 """
24 account_name, password = login_utils.GetAccountNameAndPassword(
25 credential, credentials_path=credentials_path)
27 action_runner.Navigate(
28 'https://accounts.google.com/ServiceLogin?continue='
29 'https%3A%2F%2Faccounts.google.com%2FManageAccount')
30 login_utils.InputForm(action_runner, account_name, input_id='Email',
31 form_id='gaia_firstform')
32 action_runner.ClickElement(selector='#gaia_firstform #next')
33 login_utils.InputForm(action_runner, password, input_id='Passwd')
34 action_runner.ClickElement(selector='#signIn')
35 action_runner.WaitForElement(text='My Account')