playwright-fluent
Version:
Fluent API around playwright
47 lines (46 loc) • 1.72 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const playwright_1 = require("playwright");
const SUT = tslib_1.__importStar(require(".."));
const utils_1 = require("../../../../utils");
describe('get-handle-of', () => {
let browser = undefined;
// eslint-disable-next-line @typescript-eslint/no-empty-function
beforeEach(() => { });
afterEach(async () => {
if (browser) {
await browser.close();
}
});
test('should return handle when selector exists on the page - webkit', async () => {
// Given
browser = await playwright_1.webkit.launch({ headless: true });
const context = await browser.newContext({ viewport: null });
const page = await context.newPage();
// When
const result = await SUT.getHandleOf('body', page, utils_1.defaultWaitUntilOptions);
// Then
expect(result).toBeDefined();
});
test('should throw an error when selector does not exist on the page - webkit', async () => {
// Given
browser = await playwright_1.webkit.launch({ headless: true });
const context = await browser.newContext({ viewport: null });
const page = await context.newPage();
const options = {
...utils_1.defaultWaitUntilOptions,
timeoutInMilliseconds: 2000,
};
// When
let result = undefined;
try {
await SUT.getHandleOf('foobar', page, options);
}
catch (error) {
result = error;
}
// Then
expect(result && result.message).toContain("Selector 'foobar' was not found in DOM");
});
});
;