diff --git a/src/injected/textSelectorEngine.ts b/src/injected/textSelectorEngine.ts index b94e28205b..39e1712169 100644 --- a/src/injected/textSelectorEngine.ts +++ b/src/injected/textSelectorEngine.ts @@ -80,9 +80,24 @@ function createMatcher(selector: string): Matcher { return text => text.toLowerCase().includes(selector); } +// Skips , + + + + + +
title script style
+ `); + const head = await page.$('head'); + const title = await page.$('title'); + const script = await page.$('body script'); + const style = await page.$('body style'); + for (const text of ['title', 'script', 'style']) { + expect(await page.$eval(`text=${text}`, e => e.nodeName)).toBe('DIV'); + expect(await page.$$eval(`text=${text}`, els => els.map(e => e.nodeName).join('|'))).toBe('DIV'); + for (const root of [head, title, script, style]) { + expect(await root.$(`text=${text}`)).toBe(null); + expect(await root.$$eval(`text=${text}`, els => els.length)).toBe(0); + } + } + }); + it('should match input[type=button|submit]', async({page}) => { await page.setContent(``); expect(await page.$eval(`text=hello`, e => e.outerHTML)).toBe('');