| Index: chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs
|
| diff --git a/chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs b/chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs
|
| index c847e03f7f7a1564da19a4d18945267e621bab77..44f728cb158bd6295b12fefb92ee9c47474f2739 100644
|
| --- a/chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs
|
| +++ b/chrome/browser/resources/chromeos/chromevox/cvox2/background/background_test.extjs
|
| @@ -21,7 +21,31 @@ BackgroundTest.prototype = {
|
| setUp: function() {
|
| this.mockTts = new MockTts();
|
| cvox.ChromeVox.tts = this.mockTts;
|
| - }
|
| + },
|
| +
|
| + /**
|
| + * Create a function which perform the command |cmd|.
|
| + * @param {string} cmd
|
| + * @return {function() : void}
|
| + */
|
| + doCmd: function(cmd) {
|
| + return function() {
|
| + global.backgroundObj.onGotCommand(cmd);
|
| + };
|
| + },
|
| +
|
| + linksAndHeadingsDoc: function() {/*!
|
| + <p>start</p>
|
| + <a href='#a'>alpha</a>
|
| + <a href='#b'>beta</a>
|
| + <p>
|
| + <h1>charlie</h1>
|
| + <a href='foo'>delta</a>
|
| + </p>
|
| + <a href='#bar'>echo</a>
|
| + <h2>foxtraut</h2>
|
| + <p>end<span>of test</span></p>
|
| + */}
|
| };
|
|
|
| /** Tests that ChromeVox classic is in this context. */
|
| @@ -74,50 +98,64 @@ TEST_F('BackgroundTest', 'InitialFeedback', function() {
|
|
|
| /** Tests consistency of navigating forward and backward. */
|
| TEST_F('BackgroundTest', 'ForwardBackwardNavigation', function() {
|
| - this.runWithDocument(function() {/*!
|
| - <p>start</p>
|
| - <a href='#a'>alpha</a>
|
| - <a href='#b'>beta</a>
|
| - <p>
|
| - <h1>charlie</h1>
|
| - <a href='foo'>delta</a>
|
| - </p>
|
| - <a href='#bar'>echo</a>
|
| - <h2>foxtraut</h2>
|
| - <p>end<span>of test</span></p>
|
| - */},
|
| - function() {
|
| - var doCmd = function(cmd) {
|
| - return function() {
|
| - global.backgroundObj.onGotCommand(cmd);
|
| - };
|
| - };
|
| -
|
| - var expectAfter =
|
| - cvox.ChromeVox.tts.expectSpeechAfter.bind(cvox.ChromeVox.tts);
|
| -
|
| - cvox.ChromeVox.tts.expectSpeech('start');
|
| - expectAfter('alpha', doCmd('nextLink'));
|
| - expectAfter('beta', doCmd('nextLink'));
|
| - expectAfter('delta', doCmd('nextLink'));
|
| - expectAfter('beta', doCmd('previousLink'));
|
| -
|
| - expectAfter('charlie', doCmd('nextHeading'));
|
| - expectAfter('foxtraut', doCmd('nextHeading'));
|
| - expectAfter('charlie', doCmd('previousHeading'));
|
| -
|
| - expectAfter('delta', doCmd('nextElement'));
|
| - expectAfter('echo', doCmd('nextElement'));
|
| - expectAfter('foxtraut', doCmd('nextElement'));
|
| - expectAfter('end', doCmd('nextElement'));
|
| - expectAfter('foxtraut', doCmd('previousElement'));
|
| -
|
| - // TODO(dtseng): cleanup these utterances.
|
| - expectAfter(', end, paragraph, of test, paragraph', doCmd('nextLine'));
|
| -
|
| - expectAfter('start', doCmd('goToBeginning'));
|
| - expectAfter('of test', doCmd('goToEnd'));
|
| + this.runWithDocument(this.linksAndHeadingsDoc, function() {
|
| + var doCmd = this.doCmd.bind(this);
|
| + var expectAfter =
|
| + cvox.ChromeVox.tts.expectSpeechAfter.bind(cvox.ChromeVox.tts);
|
| +
|
| + cvox.ChromeVox.tts.expectSpeech('start');
|
| + expectAfter('alpha', doCmd('nextLink'));
|
| + expectAfter('beta', doCmd('nextLink'));
|
| + expectAfter('delta', doCmd('nextLink'));
|
| + expectAfter('beta', doCmd('previousLink'));
|
| +
|
| + expectAfter('charlie', doCmd('nextHeading'));
|
| + expectAfter('foxtraut', doCmd('nextHeading'));
|
| + expectAfter('charlie', doCmd('previousHeading'));
|
| +
|
| + expectAfter('delta', doCmd('nextElement'));
|
| + expectAfter('echo', doCmd('nextElement'));
|
| + expectAfter('foxtraut', doCmd('nextElement'));
|
| + expectAfter('end', doCmd('nextElement'));
|
| + expectAfter('foxtraut', doCmd('previousElement'));
|
| +
|
| + // TODO(dtseng): cleanup these utterances.
|
| + expectAfter(', end, paragraph, of test, paragraph', doCmd('nextLine'));
|
| +
|
| + expectAfter('start', doCmd('goToBeginning'));
|
| + expectAfter('of test', doCmd('goToEnd'));
|
| +
|
| + cvox.ChromeVox.tts.finishExpectations();
|
| + }.bind(this)
|
| + );
|
| +});
|
|
|
| - cvox.ChromeVox.tts.finishExpectations();
|
| +TEST_F('BackgroundTest', 'CaretNavigation', function() {
|
| + this.runWithDocument(this.linksAndHeadingsDoc, function() {
|
| + var doCmd = this.doCmd.bind(this);
|
| + var expectAfter =
|
| + cvox.ChromeVox.tts.expectSpeechAfter.bind(cvox.ChromeVox.tts);
|
| +
|
| + cvox.ChromeVox.tts.expectSpeech('start');
|
| + expectAfter('t', doCmd('nextCharacter'), true);
|
| + expectAfter('a', doCmd('nextCharacter'), true);
|
| + expectAfter('alpha', doCmd('nextWord'), true);
|
| + expectAfter('beta', doCmd('nextWord'), true);
|
| + expectAfter('charlie', doCmd('nextWord'), true);
|
| + expectAfter('delta', doCmd('nextLine'), true);
|
| + expectAfter('echo', doCmd('nextLine'), true);
|
| + expectAfter('foxtraut', doCmd('nextLine'), true);
|
| + expectAfter(
|
| + ', end, paragraph, of test, paragraph', doCmd('nextLine'), true);
|
| + expectAfter('n', doCmd('nextCharacter'), true);
|
| + expectAfter('e', doCmd('previousCharacter'), true);
|
| + expectAfter('t', doCmd('previousCharacter'), true);
|
| + expectAfter('foxtraut', doCmd('previousWord'), true);
|
| + expectAfter('echo', doCmd('previousWord'), true);
|
| + expectAfter('a', doCmd('previousCharacter'), true);
|
| + expectAfter('t', doCmd('previousCharacter'), true);
|
| + expectAfter('echo', doCmd('nextWord'), true);
|
| +
|
| + cvox.ChromeVox.tts.finishExpectations();
|
| }.bind(this));
|
| });
|
|
|