mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
Fix frame.waitFor to work with complex selectors (#90)
The frame.waitFor didn't account for multi-level selectors. This patch fixes this, executing document.querySelector on every DOM mutation.
This commit is contained in:
committed by
Andrey Lushnikov
parent
6c1c3a0c45
commit
28265fc313
11
test/test.js
11
test/test.js
@@ -190,6 +190,17 @@ describe('Puppeteer', function() {
|
||||
expect(added).toBe(true);
|
||||
}));
|
||||
|
||||
it('should work when node is added through innerHTML', SX(async function() {
|
||||
await page.navigate(EMPTY_PAGE);
|
||||
let frame = page.mainFrame();
|
||||
let added = false;
|
||||
frame.waitFor('h3 div').then(() => added = true);
|
||||
expect(added).toBe(false);
|
||||
await frame.evaluate(addElement, 'span');
|
||||
await page.$('span', span => span.innerHTML = '<h3><div></div></h3>');
|
||||
expect(added).toBe(true);
|
||||
}));
|
||||
|
||||
it('Page.waitFor is shortcut for main frame', SX(async function() {
|
||||
await page.navigate(EMPTY_PAGE);
|
||||
await FrameUtils.attachFrame(page, 'frame1', EMPTY_PAGE);
|
||||
|
||||
Reference in New Issue
Block a user