Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const promises = [super.teardown()];
// if there is a sleep ms, wait after the last step
await new Promise(resolve => setTimeout(resolve, CONFIG.sleepMs));
if (this._runner) {
promises.push(this._runner.close());
}
await Promise.all(promises);
// give logs time to output
await new Promise(resolve => setTimeout(resolve, 100));
if (CONFIG.debug) {
// stay open
await new Promise(resolve => setTimeout(resolve, 24 * 60 * 1000));
}
}
public async close() {
if (this._screenCapture) {
await this._screenCapture.stop();
}
if (CONFIG.debug) {
logger.verbose("Browser: skipping close in debug mode");
return;
}
logger.verbose("Browser: close");
const domPath = this.domPath;
if (domPath) {
await Promise.all(
this.pages.map((page, index) =>
createDomReplayer(
page,
`${domPath}/page_${index}__${this._createdAt}.html`
)
)
);
public async close(): Promise {
if (CONFIG.debug) {
logger.verbose("Browser: skipping close in debug mode");
return;
}
logger.verbose("Browser: close");
if (this._domPath) {
await Promise.all(
this._pages.map((page, index) =>
createDomReplayer(page, `${this._domPath}/page_${index}.html`)
)
);
}
this._pages.forEach(page => page.dispose());
await this._browser.close();