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

Side by Side Diff: chrome/test/data/extensions/api_test/cookies/api/tab.html

Issue 6525016: Adding callbacks to `chrome.cookies.{set,remove}`. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Whitespace. Created 9 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « chrome/common/extensions/docs/cookies.html ('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 <script> 1 <script>
2 var TEST_DOMAIN = 'cookies.com'; 2 var TEST_DOMAIN = 'cookies.com';
3 var TEST_PATH = '/auth'; 3 var TEST_PATH = '/auth';
4 var TEST_HOST = 'www.chrome_extensions.' + TEST_DOMAIN; 4 var TEST_HOST = 'www.chrome_extensions.' + TEST_DOMAIN;
5 var TEST_URL = 'http://' + TEST_HOST + '/foobar.html?arg=toolbar&param=true'; 5 var TEST_URL = 'http://' + TEST_HOST + '/foobar.html?arg=toolbar&param=true';
6 var TEST_URL2 = 'http://chromium.' + TEST_DOMAIN + '/index.html'; 6 var TEST_URL2 = 'http://chromium.' + TEST_DOMAIN + '/index.html';
7 var TEST_URL3 = 'https://' + TEST_HOST + '/content.html'; 7 var TEST_URL3 = 'https://' + TEST_HOST + '/content.html';
8 var TEST_URL4 = 'https://' + TEST_HOST + TEST_PATH + '/content.html'; 8 var TEST_URL4 = 'https://' + TEST_HOST + TEST_PATH + '/content.html';
9 var TEST_URL5 = 'http://' + TEST_HOST + TEST_PATH + '/content.html'; 9 var TEST_URL5 = 'http://' + TEST_HOST + TEST_PATH + '/content.html';
10 var TEST_EXPIRATION_DATE = 12345678900; 10 var TEST_EXPIRATION_DATE = 12345678900;
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 } 55 }
56 56
57 function expectValidCookie(cookie) { 57 function expectValidCookie(cookie) {
58 chrome.test.assertTrue(cookie != null, 'Expected cookie not set.'); 58 chrome.test.assertTrue(cookie != null, 'Expected cookie not set.');
59 } 59 }
60 60
61 function expectNullCookie(cookie) { 61 function expectNullCookie(cookie) {
62 chrome.test.assertEq(null, cookie); 62 chrome.test.assertEq(null, cookie);
63 } 63 }
64 64
65 function expectUndefinedCookie(cookie) {
66 chrome.test.assertEq(undefined, cookie);
67 }
68
65 function removeTestCookies() { 69 function removeTestCookies() {
66 chrome.cookies.remove( 70 chrome.cookies.remove(
67 {url: TEST_URL, name: TEST_BASIC_COOKIE.name}); 71 {url: TEST_URL, name: TEST_BASIC_COOKIE.name});
68 chrome.cookies.remove( 72 chrome.cookies.remove(
69 {url: TEST_URL, name: TEST_DOMAIN_COOKIE.name}); 73 {url: TEST_URL, name: TEST_DOMAIN_COOKIE.name});
70 chrome.cookies.remove( 74 chrome.cookies.remove(
71 {url: TEST_URL4, name: TEST_SECURE_COOKIE.name}); 75 {url: TEST_URL4, name: TEST_SECURE_COOKIE.name});
72 chrome.cookies.remove({url: TEST_URL, name: 'abcd'}); 76 chrome.cookies.remove({url: TEST_URL, name: 'abcd'});
73 chrome.cookies.remove({url: TEST_ODD_URL, name: 'abcd'}); 77 chrome.cookies.remove({url: TEST_ODD_URL, name: 'abcd'});
74 } 78 }
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 domain: TEST_ODD_DOMAIN, 204 domain: TEST_ODD_DOMAIN,
201 path: TEST_ODD_PATH 205 path: TEST_ODD_PATH
202 }); 206 });
203 chrome.cookies.get({url: TEST_ODD_URL, name: 'abcd'}, 207 chrome.cookies.get({url: TEST_ODD_URL, name: 'abcd'},
204 pass(function(cookie) { 208 pass(function(cookie) {
205 expectValidCookie(cookie); 209 expectValidCookie(cookie);
206 chrome.test.assertEq(TEST_ODD_DOMAIN, unescape(cookie.domain)); 210 chrome.test.assertEq(TEST_ODD_DOMAIN, unescape(cookie.domain));
207 chrome.test.assertEq(TEST_ODD_PATH, unescape(cookie.path)); 211 chrome.test.assertEq(TEST_ODD_PATH, unescape(cookie.path));
208 })); 212 }));
209 }, 213 },
214 function setCookiesWithCallbacks() {
215 removeTestCookies();
216 // Basics.
217 chrome.cookies.set(
218 TEST_BASIC_COOKIE,
219 pass(function(cookie) {
220 expectValidCookie(cookie);
221 chrome.test.assertEq(TEST_BASIC_COOKIE.name, cookie.name);
222 chrome.test.assertEq(TEST_BASIC_COOKIE.value, cookie.value);
223 chrome.test.assertEq(TEST_HOST, cookie.domain);
224 chrome.test.assertEq(true, cookie.hostOnly);
225 chrome.test.assertEq('/', cookie.path);
226 chrome.test.assertEq(false, cookie.secure);
227 chrome.test.assertEq(false, cookie.httpOnly);
228 chrome.test.assertEq(true, cookie.session);
229 chrome.test.assertTrue(typeof cookie.expirationDate === 'undefined',
230 'Session cookie should not have expirationDate property.');
231 chrome.test.assertTrue(typeof cookie.storeId !== 'undefined',
232 'Cookie store ID not provided.');
233 }));
234 // Invalid values generate callback with no arguments, and error messages
235 chrome.cookies.set(
236 {url: TEST_UNPERMITTED_URL, name: 'abcd', domain: TEST_DOMAIN},
237 fail(
238 'No host permissions for cookies at url: "'
239 + TEST_UNPERMITTED_URL + '".',
240 expectUndefinedCookie));
241 chrome.cookies.set(
242 {url: TEST_URL, name: 'abcd=efg'},
243 fail('Failed to parse or set cookie named "abcd=efg".',
244 expectUndefinedCookie));
245 chrome.cookies.set(
246 {url: TEST_URL, name: 'abcd', value: 'HI;LO'},
247 fail('Failed to parse or set cookie named "abcd".',
248 expectUndefinedCookie));
249 chrome.cookies.set(
250 {url: TEST_URL, name: 'abcd', domain: 'cookies.com\r'},
251 fail('Failed to parse or set cookie named "abcd".',
252 expectUndefinedCookie));
253 chrome.cookies.set(
254 {url: TEST_URL, name: 'abcd', domain: 'somedomain.com'},
255 fail('Failed to parse or set cookie named "abcd".',
256 expectUndefinedCookie));
257 // Expired cookies generate callback with "null" cookie
258 chrome.cookies.set(TEST_BASIC_EXPIRED_COOKIE, pass(expectUndefinedCookie));
259 // Odd (but valid!) URLs get callbacks too!
260 chrome.cookies.set({
261 url: TEST_ODD_URL,
262 name: 'abcd',
263 domain: TEST_ODD_DOMAIN,
264 path: TEST_ODD_PATH
265 }, pass(function(cookie) {
266 expectValidCookie(cookie);
267 chrome.test.assertEq(TEST_ODD_DOMAIN, unescape(cookie.domain));
268 chrome.test.assertEq(TEST_ODD_PATH, unescape(cookie.path));
269 }));
270 },
210 function removeCookie() { 271 function removeCookie() {
211 removeTestCookies(); 272 removeTestCookies();
212 chrome.cookies.set(TEST_BASIC_COOKIE); 273 chrome.cookies.set(TEST_BASIC_COOKIE);
213 chrome.cookies.get( 274 chrome.cookies.get(
214 {url: TEST_URL, name: TEST_BASIC_COOKIE.name}, 275 {url: TEST_URL, name: TEST_BASIC_COOKIE.name},
215 pass(expectValidCookie)); 276 pass(expectValidCookie));
216 // Removal with any domain-matching URL will do. 277 // Removal with any domain-matching URL will do.
217 chrome.cookies.remove( 278 chrome.cookies.remove(
218 {url: TEST_URL4, name: TEST_BASIC_COOKIE.name}); 279 {url: TEST_URL4, name: TEST_BASIC_COOKIE.name});
219 chrome.cookies.get( 280 chrome.cookies.get(
(...skipping 12 matching lines...) Expand all
232 chrome.cookies.set(TEST_DOMAIN_COOKIE); 293 chrome.cookies.set(TEST_DOMAIN_COOKIE);
233 chrome.cookies.get( 294 chrome.cookies.get(
234 {url: TEST_URL2, name: TEST_DOMAIN_COOKIE.name}, 295 {url: TEST_URL2, name: TEST_DOMAIN_COOKIE.name},
235 pass(expectValidCookie)); 296 pass(expectValidCookie));
236 chrome.cookies.remove( 297 chrome.cookies.remove(
237 {url: TEST_UNPERMITTED_URL, name: TEST_DOMAIN_COOKIE.name}); 298 {url: TEST_UNPERMITTED_URL, name: TEST_DOMAIN_COOKIE.name});
238 chrome.cookies.get( 299 chrome.cookies.get(
239 {url: TEST_URL2, name: TEST_DOMAIN_COOKIE.name}, 300 {url: TEST_URL2, name: TEST_DOMAIN_COOKIE.name},
240 pass(expectValidCookie)); 301 pass(expectValidCookie));
241 }, 302 },
303 function removeCookiesWithCallbacks() {
304 removeTestCookies();
305 chrome.cookies.set(TEST_BASIC_COOKIE);
306 chrome.cookies.get(
307 {url: TEST_URL, name: TEST_BASIC_COOKIE.name},
308 pass(expectValidCookie));
309 // Removal with any domain-matching URL will trigger callback with the
310 // removed cookie's "url" and "name" fields.
311 chrome.cookies.remove(
312 {url: TEST_URL4, name: TEST_BASIC_COOKIE.name}, pass(function(data) {
313 chrome.test.assertEq(TEST_URL4, data.url);
314 chrome.test.assertEq(TEST_BASIC_COOKIE.name, data.name);
315 chrome.test.assertTrue(typeof data.storeId !== 'undefined',
316 'Cookie store ID not provided.');
317 }));
318 // Removal with a disallowed URL should trigger the callback with no
319 // arguments, and a set error message.
320 chrome.cookies.set(TEST_DOMAIN_COOKIE);
321 chrome.cookies.remove(
322 {url: TEST_UNPERMITTED_URL, name: TEST_DOMAIN_COOKIE.name},
323 fail(
324 'No host permissions for cookies at url: "'
325 + TEST_UNPERMITTED_URL + '".',
326 expectUndefinedCookie));
327 },
242 function getAllCookies() { 328 function getAllCookies() {
243 removeTestCookies(); 329 removeTestCookies();
244 chrome.cookies.getAll({}, pass(function(cookies) { 330 chrome.cookies.getAll({}, pass(function(cookies) {
245 chrome.test.assertEq(0, cookies.length); 331 chrome.test.assertEq(0, cookies.length);
246 })); 332 }));
247 chrome.cookies.set(TEST_BASIC_COOKIE); 333 chrome.cookies.set(TEST_BASIC_COOKIE);
248 chrome.cookies.set(TEST_SECURE_COOKIE); 334 chrome.cookies.set(TEST_SECURE_COOKIE);
249 chrome.cookies.getAll( 335 chrome.cookies.getAll(
250 {domain: TEST_DOMAIN}, pass(function(cookies) { 336 {domain: TEST_DOMAIN}, pass(function(cookies) {
251 chrome.test.assertEq(2, cookies.length); 337 chrome.test.assertEq(2, cookies.length);
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 chrome.cookies.getAll( 374 chrome.cookies.getAll(
289 {storeId: cookieStores[0].id}, 375 {storeId: cookieStores[0].id},
290 pass(function(cookies) { 376 pass(function(cookies) {
291 chrome.test.assertEq(1, cookies.length); 377 chrome.test.assertEq(1, cookies.length);
292 chrome.test.assertEq(TEST_BASIC_COOKIE.name, cookies[0].name); 378 chrome.test.assertEq(TEST_BASIC_COOKIE.name, cookies[0].name);
293 })); 379 }));
294 })); 380 }));
295 } 381 }
296 ]); 382 ]);
297 </script> 383 </script>
OLDNEW
« no previous file with comments | « chrome/common/extensions/docs/cookies.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698