| Index: chrome/browser/resources/chromeos/braille_ime/braille_ime_unittest.gtestjs
|
| diff --git a/chrome/browser/resources/chromeos/braille_ime/braille_ime_unittest.gtestjs b/chrome/browser/resources/chromeos/braille_ime/braille_ime_unittest.gtestjs
|
| index d011ee16b265b6a87d3bbf1a2652ae5e9bf8b514..92eabdc253697c3be0c92e2d9f5bf3f040c5d3dc 100644
|
| --- a/chrome/browser/resources/chromeos/braille_ime/braille_ime_unittest.gtestjs
|
| +++ b/chrome/browser/resources/chromeos/braille_ime/braille_ime_unittest.gtestjs
|
| @@ -122,12 +122,20 @@ BrailleImeUnitTest.prototype = {
|
| this.port.messages.length = 0;
|
| },
|
|
|
| - sendKeyDown: function(code) {
|
| - return this.onKeyEvent.dispatch(ENGINE_ID, {code: code, type: 'keydown'});
|
| + sendKeyDown: function(code, extra) {
|
| + var event = {code: code, type: 'keydown'};
|
| + for (var key in extra) {
|
| + event[key] = extra[key];
|
| + }
|
| + return this.onKeyEvent.dispatch(ENGINE_ID, event);
|
| },
|
|
|
| - sendKeyUp: function(code) {
|
| - return this.onKeyEvent.dispatch(ENGINE_ID, {code: code, type: 'keyup'});
|
| + sendKeyUp: function(code, extra) {
|
| + var event = {code: code, type: 'keyup'};
|
| + for (var key in extra) {
|
| + event[key] = extra[key];
|
| + }
|
| + return this.onKeyEvent.dispatch(ENGINE_ID, event);
|
| },
|
| };
|
|
|
| @@ -154,6 +162,7 @@ TEST_F('BrailleImeUnitTest', 'KeysWhenStandardKeysEnabled', function() {
|
| expectTrue(this.sendKeyDown('KeyF'));
|
| expectTrue(this.sendKeyUp('KeyJ'));
|
| expectTrue(this.sendKeyUp('KeyF'));
|
| +
|
| // Make sure that other keys are not handled, either by themselves or while
|
| // one of the 'braille keys' is pressed.
|
| expectFalse(this.sendKeyDown('KeyX'));
|
| @@ -164,9 +173,32 @@ TEST_F('BrailleImeUnitTest', 'KeysWhenStandardKeysEnabled', function() {
|
| expectTrue(this.sendKeyUp('KeyS'));
|
| expectFalse(this.sendKeyUp('KeyG'));
|
|
|
| + // Keys like Ctrl L should not be handled, despite L being a dot key.
|
| + var ctrlFlag = {ctrlKey: true};
|
| + expectFalse(this.sendKeyDown('ControlLeft', ctrlFlag));
|
| + expectFalse(this.sendKeyDown('KeyL', ctrlFlag));
|
| + expectFalse(this.sendKeyUp('KeyL', ctrlFlag));
|
| + expectFalse(this.sendKeyUp('ControlLeft', ctrlFlag))
|
| +
|
| + // Space key by itself should send a blank cell.
|
| + expectTrue(this.sendKeyDown('Space'));
|
| + expectTrue(this.sendKeyUp('Space'));
|
| +
|
| + // Space and braille dots results in no event.
|
| + expectTrue(this.sendKeyDown('Space'));
|
| + expectTrue(this.sendKeyDown('KeyF'));
|
| + expectTrue(this.sendKeyUp('Space'));
|
| + expectTrue(this.sendKeyUp('KeyF'));
|
| + // Send the braille key first, still no event should be produced.
|
| + expectTrue(this.sendKeyDown('KeyF'));
|
| + expectTrue(this.sendKeyDown('Space'));
|
| + expectTrue(this.sendKeyUp('Space'));
|
| + expectTrue(this.sendKeyUp('KeyF'));
|
| +
|
| assertThat(this.port.messages,
|
| eqJSON([{type: 'brailleDots', dots: 0x03},
|
| - {type: 'brailleDots', dots: 0x09}]));
|
| + {type: 'brailleDots', dots: 0x09},
|
| + {type: 'brailleDots', dots: 0}]));
|
| });
|
|
|
| TEST_F('BrailleImeUnitTest', 'UseStandardKeyboardSettingPreserved', function() {
|
| @@ -175,7 +207,6 @@ TEST_F('BrailleImeUnitTest', 'UseStandardKeyboardSettingPreserved', function() {
|
| this.onMenuItemActivated.dispatch(ENGINE_ID, this.menuItems[0].id);
|
| assertTrue(this.menuItems[0].checked);
|
| // Create a new instance and make sure the setting is still turned on.
|
| - console.log('localStorage: ' + JSON.stringify(localStorage));
|
| this.createIme();
|
| this.activateIme();
|
| assertTrue(this.menuItems[0].checked);
|
|
|