Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(101)

Side by Side Diff: chrome/test/data/extensions/api_test/tabs/basics/move.js

Issue 2901403003: [Extensions Bindings] Update tabs tests to accept new error messages (Closed)
Patch Set: lazyboys Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/test/data/extensions/api_test/tabs/basics/audible.js ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 var firstWindowId; 5 var firstWindowId;
6 var secondWindowId; 6 var secondWindowId;
7 var moveTabIds = {}; 7 var moveTabIds = {};
8 var kChromeUINewTabURL = "chrome://newtab/"; 8 var kChromeUINewTabURL = "chrome://newtab/";
9 9
10 chrome.test.runTests([ 10 chrome.test.runTests([
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 assertEq(3, tabs.length); 135 assertEq(3, tabs.length);
136 assertEq(pageUrl("b"), tabs[0].url); 136 assertEq(pageUrl("b"), tabs[0].url);
137 assertEq(pageUrl("a"), tabs[1].url); 137 assertEq(pageUrl("a"), tabs[1].url);
138 assertEq(kChromeUINewTabURL, tabs[2].url); 138 assertEq(kChromeUINewTabURL, tabs[2].url);
139 })); 139 }));
140 })); 140 }));
141 }, 141 },
142 142
143 // Make sure we don't crash when the index is out of range. 143 // Make sure we don't crash when the index is out of range.
144 function moveToInvalidTab() { 144 function moveToInvalidTab() {
145 var error_msg = "Invalid value for argument 2. Property 'index': " + 145 var expectedJsBindingsError =
146 "Value must not be less than -1."; 146 'Invalid value for argument 2. Property \'index\': ' +
147 'Value must not be less than -1.';
148 var expectedNativeBindingsError =
149 'Error in invocation of tabs.move(' +
150 '[integer|array] tabIds, object moveProperties, ' +
151 'optional function callback): Error at parameter \'moveProperties\': ' +
152 'Error at property \'index\': Value must be at least -1.';
153 var caught = false;
147 try { 154 try {
148 chrome.tabs.move(moveTabIds['b'], {"index": -2}, function(tab) { 155 chrome.tabs.move(moveTabIds['b'], {"index": -2}, function(tab) {
149 chrome.test.fail("Moved a tab to an invalid index"); 156 chrome.test.fail("Moved a tab to an invalid index");
150 }); 157 });
151 } catch (e) { 158 } catch (e) {
152 assertEq(error_msg, e.message); 159 assertTrue(e.message == expectedJsBindingsError ||
160 e.message == expectedNativeBindingsError, e.message);
161 caught = true;
153 } 162 }
163 assertTrue(caught);
154 chrome.tabs.move(moveTabIds['b'], {"index": 10000}, pass(function(tabB) { 164 chrome.tabs.move(moveTabIds['b'], {"index": 10000}, pass(function(tabB) {
155 assertEq(2, tabB.index); 165 assertEq(2, tabB.index);
156 })); 166 }));
157 }, 167 },
158 168
159 // Check that attempting to move an empty list of tabs doesn't crash browser 169 // Check that attempting to move an empty list of tabs doesn't crash browser
160 function moveEmptyTabList() { 170 function moveEmptyTabList() {
161 chrome.tabs.move([], {"index": 0}, fail("No tabs given.")); 171 chrome.tabs.move([], {"index": 0}, fail("No tabs given."));
162 }, 172 },
163 173
164 // Move a tab to the current window. 174 // Move a tab to the current window.
165 function moveToCurrentWindow() { 175 function moveToCurrentWindow() {
166 chrome.windows.getCurrent(pass(function(win) { 176 chrome.windows.getCurrent(pass(function(win) {
167 var targetWin = win.id == firstWindowId ? secondWindowId : firstWindowId; 177 var targetWin = win.id == firstWindowId ? secondWindowId : firstWindowId;
168 chrome.tabs.query({"windowId": targetWin}, pass(function(tabs) { 178 chrome.tabs.query({"windowId": targetWin}, pass(function(tabs) {
169 chrome.tabs.move(tabs[0].id, 179 chrome.tabs.move(tabs[0].id,
170 {"windowId": chrome.windows.WINDOW_ID_CURRENT, 180 {"windowId": chrome.windows.WINDOW_ID_CURRENT,
171 "index": 0}, 181 "index": 0},
172 pass(function(tab) { 182 pass(function(tab) {
173 assertEq(win.id, tab.windowId); 183 assertEq(win.id, tab.windowId);
174 })); 184 }));
175 })); 185 }));
176 })); 186 }));
177 } 187 }
178 ]); 188 ]);
OLDNEW
« no previous file with comments | « chrome/test/data/extensions/api_test/tabs/basics/audible.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698