https://github.com/angular/angular
Raw File
Tip revision: 1f84ac1d5f6c357d2af2ebb4e5876ee3718d7d86 authored by Alex Rickabaugh on 10 May 2021, 21:43:00 UTC
release: cut the v12.0.0-rc.3 release (#42031)
Tip revision: 1f84ac1
api.po.ts
import { element, by } from 'protractor';
import { SitePage } from './app.po';

export class ApiPage extends SitePage {
  getDescendants(docType: string, onlyDirect = false) {
    // This selector is horrible because we have potentially recursive HTML lists
    //
    // ul
    //   li
    //     code
    //     ul
    //       li
    //         code
    //     ul
    //       li
    //         code
    //   li
    //     code
    //
    // and we want to be able to pull out the code elements from only the first level
    // if `onlyDirect` is set to `true`.
    const selector = `.descendants.${docType} ${onlyDirect ? '>' : ''} ul > li > code`;
    return element.all(by.css(selector)).map<string>(item => item?.getText());
  }

  getOverview(docType: string) {
    return element(by.css(`.${docType}-overview`));
  }

  getSection(cls: string) {
    return element(by.css(`section.${cls}`));
  }

  getBadge(cls: string) {
    return element(by.css('.api-status-label.' +  cls));
  }
}
back to top