text: /*!
   * Copyright (c) 2017, Okta, Inc. and/or its affiliates. All rights reserved.
   * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
   *
   * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   *
   * See the License for the specific language governing permissions and limitations under the License.
   */
  
  const constants = require('../util/constants');
  const EC = protractor.ExpectedConditions;
  
  module.exports = class OktaSignInPage {
    constructor() {
      this.username = $('[name=username]');
      this.password = $('[name=password]');
      this.submit = $('#okta-signin-submit');
      this.banner = $('#banner');
    }
  
    async load() {
      await browser.get(constants.LOGIN_PATH);
    }
  
    async waitUntilVisible() {
      await browser.wait(EC.presenceOf(this.banner), 50000);
    }
  
    async signIn({username, password}) {
      await this.username.sendKeys(username);
      await this.password.sendKeys(password);
      await this.submit.click();
    }
  }
  