Path: blob/trunk/javascript/selenium-webdriver/lib/fedcm/dialog.js
2885 views
// Licensed to the Software Freedom Conservancy (SFC) under one1// or more contributor license agreements. See the NOTICE file2// distributed with this work for additional information3// regarding copyright ownership. The SFC licenses this file4// to you under the Apache License, Version 2.0 (the5// "License"); you may not use this file except in compliance6// with the License. You may obtain a copy of the License at7//8// http://www.apache.org/licenses/LICENSE-2.09//10// Unless required by applicable law or agreed to in writing,11// software distributed under the License is distributed on an12// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY13// KIND, either express or implied. See the License for the14// specific language governing permissions and limitations15// under the License.1617const command = require('../command')18const Account = require('./account')1920class Dialog {21constructor(driver) {22this._driver = driver23}2425async title() {26const result = await this._driver.execute(new command.Command(command.Name.GET_FEDCM_TITLE))2728return result.title29}3031subtitle() {32return this._driver.execute(new command.Command(command.Name.GET_FEDCM_TITLE))33}3435type() {36return this._driver.execute(new command.Command(command.Name.GET_FEDCM_DIALOG_TYPE))37}3839async accounts() {40const result = await this._driver.execute(new command.Command(command.Name.GET_ACCOUNTS))4142const accountArray = []4344result.forEach((account) => {45const acc = new Account(46account.accountId,47account.email,48account.name,49account.givenName,50account.pictureUrl,51account.idpConfigUrl,52account.loginState,53account.termsOfServiceUrl,54account.privacyPolicyUrl,55)56accountArray.push(acc)57})5859return accountArray60}6162selectAccount(index) {63return this._driver.execute(new command.Command(command.Name.SELECT_ACCOUNT).setParameter('accountIndex', index))64}6566accept() {67return this._driver.execute(new command.Command(command.Name.CLICK_DIALOG_BUTTON))68}6970dismiss() {71return this._driver.execute(new command.Command(command.Name.CANCEL_DIALOG))72}73}7475module.exports = Dialog767778