Inroduce page.press (#96)

This patch:
- introduces page.press() method
- adds more input tests

References #89
This commit is contained in:
JoelEinbinder
2017-07-19 14:43:07 -07:00
committed by Andrey Lushnikov
parent 71f8c76f04
commit febd747c5b
3 changed files with 37 additions and 0 deletions

View File

@@ -705,6 +705,26 @@ describe('Puppeteer', function() {
await keyboard.press('Backspace');
expect(await page.evaluate(() => document.querySelector('textarea').value)).toBe('Hello World!');
}));
it('should send a character with Page.press', SX(async function() {
await page.navigate(PREFIX + '/input/textarea.html');
await page.focus('textarea');
await page.press('a', {text: 'f'});
expect(await page.$('textarea', t => t.value)).toBe('f');
await page.evaluate(() => window.addEventListener('keydown', e => e.preventDefault(), true));
await page.press('a', {text: 'y'});
expect(await page.$('textarea', t => t.value)).toBe('f');
}));
it('should send a character with sendCharacter', SX(async function() {
await page.navigate(PREFIX + '/input/textarea.html');
await page.focus('textarea');
await page.keyboard.sendCharacter('嗨');
expect(await page.$('textarea', t => t.value)).toBe('嗨');
await page.evaluate(() => window.addEventListener('keydown', e => e.preventDefault(), true));
await page.keyboard.sendCharacter('a');
expect(await page.$('textarea', t => t.value)).toBe('嗨a');
}));
it('should report shiftKey', SX(async function(){
await page.navigate(PREFIX + '/input/keyboard.html');
let keyboard = page.keyboard;