playwright-fluent
Version:
Fluent API around playwright
45 lines (44 loc) • 1.61 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const path = tslib_1.__importStar(require("path"));
const playwright_1 = require("playwright");
const simple_fake_server_1 = require("simple-fake-server");
const SUT = tslib_1.__importStar(require("../index"));
const utils_1 = require("../../../../utils");
describe('record page errors', () => {
let browser = undefined;
let fakeServer = undefined;
beforeAll(() => {
fakeServer = new simple_fake_server_1.FakeServer(1238);
fakeServer.start();
//The FakeServer now listens on http://localhost:1238
});
afterAll(() => {
if (fakeServer) {
fakeServer.stop();
}
});
// eslint-disable-next-line @typescript-eslint/no-empty-function
beforeEach(() => { });
afterEach(async () => {
if (browser) {
await browser.close();
}
});
test('should record page errors', async () => {
// Given
browser = await playwright_1.chromium.launch({ headless: true });
const context = await browser.newContext({ viewport: null });
const page = await context.newPage();
const errors = [];
const callback = (request) => errors.push(request);
// When
await SUT.recordPageErrors(page, callback);
await page.goto(`file:${path.join(__dirname, 'record-page-errors.test.html')}`);
await (0, utils_1.sleep)(3000);
// Then
expect(errors.length).toBe(1);
expect(errors[0].message).toContain('Oops');
});
});
;