@ -7,6 +7,9 @@
|
||||
*/
|
||||
|
||||
import {verifyNoBrowserErrors} from 'e2e_util/e2e_util';
|
||||
import {browser, by, element, protractor} from 'protractor';
|
||||
|
||||
const Key = protractor.Key;
|
||||
|
||||
describe('key_events', function() {
|
||||
|
||||
@ -20,13 +23,13 @@ describe('key_events', function() {
|
||||
expect(firstArea.getText()).toEqual('(none)');
|
||||
|
||||
// testing different key categories:
|
||||
firstArea.sendKeys(protractor.Key.ENTER);
|
||||
firstArea.sendKeys(Key.ENTER);
|
||||
expect(firstArea.getText()).toEqual('enter');
|
||||
|
||||
firstArea.sendKeys(protractor.Key.SHIFT, protractor.Key.ENTER);
|
||||
firstArea.sendKeys(Key.SHIFT, Key.ENTER);
|
||||
expect(firstArea.getText()).toEqual('shift.enter');
|
||||
|
||||
firstArea.sendKeys(protractor.Key.CONTROL, protractor.Key.SHIFT, protractor.Key.ENTER);
|
||||
firstArea.sendKeys(Key.CONTROL, Key.SHIFT, Key.ENTER);
|
||||
expect(firstArea.getText()).toEqual('control.shift.enter');
|
||||
|
||||
firstArea.sendKeys(' ');
|
||||
@ -37,41 +40,41 @@ describe('key_events', function() {
|
||||
firstArea.sendKeys('u');
|
||||
expect(firstArea.getText()).toEqual('u');
|
||||
|
||||
firstArea.sendKeys(protractor.Key.CONTROL, 'b');
|
||||
firstArea.sendKeys(Key.CONTROL, 'b');
|
||||
expect(firstArea.getText()).toEqual('control.b');
|
||||
|
||||
firstArea.sendKeys(protractor.Key.F1);
|
||||
firstArea.sendKeys(Key.F1);
|
||||
expect(firstArea.getText()).toEqual('f1');
|
||||
|
||||
firstArea.sendKeys(protractor.Key.ALT, protractor.Key.F1);
|
||||
firstArea.sendKeys(Key.ALT, Key.F1);
|
||||
expect(firstArea.getText()).toEqual('alt.f1');
|
||||
|
||||
firstArea.sendKeys(protractor.Key.CONTROL, protractor.Key.F1);
|
||||
firstArea.sendKeys(Key.CONTROL, Key.F1);
|
||||
expect(firstArea.getText()).toEqual('control.f1');
|
||||
|
||||
// There is an issue with protractor.Key.NUMPAD0 (and other NUMPADx):
|
||||
// There is an issue with Key.NUMPAD0 (and other NUMPADx):
|
||||
// chromedriver does not correctly set the location property on the event to
|
||||
// specify that the key is on the numeric keypad (event.location = 3)
|
||||
// so the following test fails:
|
||||
// firstArea.sendKeys(protractor.Key.NUMPAD0);
|
||||
// firstArea.sendKeys(Key.NUMPAD0);
|
||||
// expect(firstArea.getText()).toEqual('0');
|
||||
});
|
||||
|
||||
it('should correctly react to the specified key', function() {
|
||||
var secondArea = element.all(by.css('.sample-area')).get(1);
|
||||
secondArea.sendKeys(protractor.Key.SHIFT, protractor.Key.ENTER);
|
||||
secondArea.sendKeys(Key.SHIFT, Key.ENTER);
|
||||
expect(secondArea.getText()).toEqual('You pressed shift.enter!');
|
||||
});
|
||||
|
||||
it('should not react to incomplete keys', function() {
|
||||
var secondArea = element.all(by.css('.sample-area')).get(1);
|
||||
secondArea.sendKeys(protractor.Key.ENTER);
|
||||
secondArea.sendKeys(Key.ENTER);
|
||||
expect(secondArea.getText()).toEqual('');
|
||||
});
|
||||
|
||||
it('should not react to keys with more modifiers', function() {
|
||||
var secondArea = element.all(by.css('.sample-area')).get(1);
|
||||
secondArea.sendKeys(protractor.Key.CONTROL, protractor.Key.SHIFT, protractor.Key.ENTER);
|
||||
secondArea.sendKeys(Key.CONTROL, Key.SHIFT, Key.ENTER);
|
||||
expect(secondArea.getText()).toEqual('');
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user