import {ElementHandle, LaunchOptions, Page} from 'puppeteer'; export const puppeteerConfig: LaunchOptions = { headless: true, timeout: 10000, defaultViewport: { width: 1200, height: 900, }, args: ['--no-sandbox', '--disable-setuid-sandbox'], }; export const baseUrl = 'http://localhost:3330'; export async function getClassList(element: ElementHandle): Promise { const className = await element.getProperty('className'); return (await className.jsonValue()).split(' '); } export async function getInnerText(element: ElementHandle): Promise { const text = await element.getProperty('innerText'); return text.jsonValue(); } export function addErrorHandler(page: Page): void { page.on('error', err => { // tslint:disable-next-line console.error('error happen at the page: ', err); }); page.on('pageerror', pageerr => { // tslint:disable-next-line console.error('pageerror occurred: ', pageerr); }); }