Skip to content

Commit 030c217

Browse files
authored
test: add a test for selectors with spaces in css attributes (#2001)
1 parent 7f8aa70 commit 030c217

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

test/queryselector.spec.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,27 @@ describe('Page.$eval', function() {
126126
const error = await page.$eval('*=div', e => e.outerHTML).catch(e => e);
127127
expect(error.message).toBe('Unknown engine "" while parsing selector *=div');
128128
});
129+
it('should work with spaces in css attributes', async({page, server}) => {
130+
await page.setContent('<div><input placeholder="Select date"></div>');
131+
expect(await page.waitForSelector(`[placeholder="Select date"]`)).toBeTruthy();
132+
expect(await page.waitForSelector(`[placeholder='Select date']`)).toBeTruthy();
133+
expect(await page.waitForSelector(`input[placeholder="Select date"]`)).toBeTruthy();
134+
expect(await page.waitForSelector(`input[placeholder='Select date']`)).toBeTruthy();
135+
expect(await page.$(`[placeholder="Select date"]`)).toBeTruthy();
136+
expect(await page.$(`[placeholder='Select date']`)).toBeTruthy();
137+
expect(await page.$(`input[placeholder="Select date"]`)).toBeTruthy();
138+
expect(await page.$(`input[placeholder='Select date']`)).toBeTruthy();
139+
expect(await page.$eval(`[placeholder="Select date"]`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
140+
expect(await page.$eval(`[placeholder='Select date']`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
141+
expect(await page.$eval(`input[placeholder="Select date"]`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
142+
expect(await page.$eval(`input[placeholder='Select date']`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
143+
expect(await page.$eval(`css=[placeholder="Select date"]`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
144+
expect(await page.$eval(`css=[placeholder='Select date']`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
145+
expect(await page.$eval(`css=input[placeholder="Select date"]`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
146+
expect(await page.$eval(`css=input[placeholder='Select date']`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
147+
expect(await page.$eval(`div >> [placeholder="Select date"]`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
148+
expect(await page.$eval(`div >> [placeholder='Select date']`, e => e.outerHTML)).toBe('<input placeholder="Select date">');
149+
});
129150
});
130151

131152
describe('Page.$$eval', function() {

0 commit comments

Comments
 (0)