| Index: remoting/webapp/browser_test/browser_test.js
|
| diff --git a/remoting/webapp/browser_test/browser_test.js b/remoting/webapp/browser_test/browser_test.js
|
| index 305f65a72cc0a5577c6ea6239ac3c6acbcbd2155..f049de3204a4373223e8ecc858c9110523240084 100644
|
| --- a/remoting/webapp/browser_test/browser_test.js
|
| +++ b/remoting/webapp/browser_test/browser_test.js
|
| @@ -64,6 +64,11 @@ browserTest.init = function() {
|
| };
|
| };
|
|
|
| +/**
|
| + * Fails the C++ calling browser test with |message| if |expr| is false.
|
| + * @param {boolean} expr
|
| + * @param {string} message
|
| + */
|
| browserTest.expect = function(expr, message) {
|
| if (!expr) {
|
| message = (message) ? '<' + message + '>' : '';
|
| @@ -167,12 +172,19 @@ browserTest.connectMe2Me = function() {
|
|
|
| browserTest.disconnect = function() {
|
| var AppMode = remoting.AppMode;
|
| + var finishedMode = AppMode.CLIENT_SESSION_FINISHED_ME2ME;
|
| + var finishedButton = 'client-finished-me2me-button';
|
| + if (remoting.clientSession.getMode() == remoting.ClientSession.Mode.IT2ME) {
|
| + finishedMode = AppMode.CLIENT_SESSION_FINISHED_IT2ME;
|
| + finishedButton = 'client-finished-it2me-button';
|
| + }
|
| +
|
| remoting.disconnect();
|
| - return browserTest.onUIMode(AppMode.CLIENT_SESSION_FINISHED_ME2ME).then(
|
| - function() {
|
| - browserTest.clickOnControl('client-finished-me2me-button');
|
| - return browserTest.onUIMode(AppMode.HOME);
|
| - });
|
| +
|
| + return browserTest.onUIMode(finishedMode).then(function() {
|
| + browserTest.clickOnControl(finishedButton);
|
| + return browserTest.onUIMode(AppMode.HOME);
|
| + });
|
| };
|
|
|
| browserTest.enterPIN = function(pin, opt_expectError) {
|
| @@ -186,31 +198,40 @@ browserTest.enterPIN = function(pin, opt_expectError) {
|
| browserTest.clickOnControl('pin-connect-button');
|
| }).then(function() {
|
| if (opt_expectError) {
|
| - return browserTest.expectMe2MeError(remoting.Error.INVALID_ACCESS_CODE);
|
| + return browserTest.expectConnectionError(
|
| + remoting.ClientSession.Mode.ME2ME,
|
| + remoting.Error.INVALID_ACCESS_CODE);
|
| } else {
|
| - return browserTest.expectMe2MeConnected();
|
| + return browserTest.expectConnected();
|
| }
|
| });
|
| };
|
|
|
| -browserTest.expectMe2MeError = function(errorTag) {
|
| +browserTest.expectConnectionError = function(connectionMode, errorTag) {
|
| var AppMode = remoting.AppMode;
|
| var Timeout = browserTest.Timeout;
|
|
|
| - var onConnected = browserTest.onUIMode(AppMode.IN_SESSION, Timeout.None);
|
| - var onFailure = browserTest.onUIMode(AppMode.CLIENT_CONNECT_FAILED_ME2ME);
|
| + var finishButton = 'client-finished-me2me-button';
|
| + var failureMode = AppMode.CLIENT_CONNECT_FAILED_ME2ME;
|
| +
|
| + if (connectionMode == remoting.ClientSession.Mode.IT2ME) {
|
| + failureMode = AppMode.CLIENT_CONNECT_FAILED_IT2ME;
|
| + finishButton = 'client-finished-it2me-button';
|
| + }
|
| +
|
| + var onConnected = browserTest.onUIMode(AppMode.IN_SESSION, Timeout.NONE);
|
| + var onFailure = browserTest.onUIMode(failureMode);
|
|
|
| onConnected = onConnected.then(function() {
|
| return Promise.reject(
|
| - 'Expected the Me2Me connection to fail.');
|
| + 'Expected the connection to fail.');
|
| });
|
|
|
| onFailure = onFailure.then(function() {
|
| var errorDiv = document.getElementById('connect-error-message');
|
| var actual = errorDiv.innerText;
|
| var expected = l10n.getTranslationOrError(errorTag);
|
| -
|
| - browserTest.clickOnControl('client-finished-me2me-button');
|
| + browserTest.clickOnControl(finishButton);
|
|
|
| if (actual != expected) {
|
| return Promise.reject('Unexpected failure. actual:' + actual +
|
| @@ -221,7 +242,7 @@ browserTest.expectMe2MeError = function(errorTag) {
|
| return Promise.race([onConnected, onFailure]);
|
| };
|
|
|
| -browserTest.expectMe2MeConnected = function() {
|
| +browserTest.expectConnected = function() {
|
| var AppMode = remoting.AppMode;
|
| // Timeout if the session is not connected within 30 seconds.
|
| var SESSION_CONNECTION_TIMEOUT = 30000;
|
|
|