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

Unified Diff: chrome/test/data/extensions/api_test/cookies/events/test.js

Issue 25677004: Correct and simplify the cookie events browser test (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkgr
Patch Set: Created 7 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/extensions/api_test/cookies/events/test.js
diff --git a/chrome/test/data/extensions/api_test/cookies/events/test.js b/chrome/test/data/extensions/api_test/cookies/events/test.js
index 654f7ce9ace2e3f31e2a44fe0f991455dd36b289..0734ba06661790e429e9793fdcb0974568647eab 100644
--- a/chrome/test/data/extensions/api_test/cookies/events/test.js
+++ b/chrome/test/data/extensions/api_test/cookies/events/test.js
@@ -44,105 +44,82 @@ var OVERWRITE_COOKIE_POST = {
chrome.test.runTests([
function testSet() {
- var testCompleted = chrome.test.callbackAdded();
- var listener = function (info) {
+ chrome.test.listenOnce(chrome.cookies.onChanged, function (info) {
chrome.test.assertFalse(info.removed);
chrome.test.assertEq('explicit', info.cause);
chrome.test.assertEq(SET_REMOVE_COOKIE, info.cookie);
- testCompleted();
- };
-
- chrome.cookies.onChanged.addListener(listener);
+ });
chrome.cookies.set({
url: 'http://a.com/path',
name: 'testSetRemove',
value: '42',
expirationDate: 12345678900
- }, function () {
- chrome.cookies.onChanged.removeListener(listener);
});
},
function testRemove() {
- var testCompleted = chrome.test.callbackAdded();
- var listener = function (info) {
+ chrome.test.listenOnce(chrome.cookies.onChanged, function (info) {
chrome.test.assertTrue(info.removed);
chrome.test.assertEq('explicit', info.cause);
chrome.test.assertEq(SET_REMOVE_COOKIE, info.cookie);
- testCompleted();
- };
-
- chrome.cookies.onChanged.addListener(listener);
+ });
chrome.cookies.remove({
url: 'http://a.com/path',
name: 'testSetRemove'
- }, function () {
- chrome.cookies.onChanged.removeListener(listener);
});
},
function overwriteFirstSet() {
- var testCompleted = chrome.test.callbackAdded();
- var listener = function (info) {
+ chrome.test.listenOnce(chrome.cookies.onChanged, function (info) {
chrome.test.assertFalse(info.removed);
chrome.test.assertEq('explicit', info.cause);
chrome.test.assertEq(OVERWRITE_COOKIE_PRE, info.cookie);
- testCompleted();
- };
-
- chrome.cookies.onChanged.addListener(listener);
+ });
chrome.cookies.set({
url: 'http://a.com/path',
name: 'testOverwrite',
value: '42',
expirationDate: 12345678900
- }, function () {
- chrome.cookies.onChanged.removeListener(listener);
});
},
function overwriteSecondSet() {
- var removeCompleted = chrome.test.callbackAdded();
- var setCompleted = chrome.test.callbackAdded();
- var listenerRemove = function (info) {
- if (info.removed) {
- chrome.test.assertEq('overwrite', info.cause);
- chrome.test.assertEq(OVERWRITE_COOKIE_PRE, info.cookie);
- removeCompleted();
- }
- };
- var listenerSet = function (info) {
- if (!info.removed) {
- chrome.test.assertEq('explicit', info.cause);
- chrome.test.assertEq(OVERWRITE_COOKIE_POST, info.cookie);
- setCompleted();
- }
- };
- chrome.cookies.onChanged.addListener(listenerRemove);
- chrome.cookies.onChanged.addListener(listenerSet);
+ var haveRemoved = false;
+ var haveSet = false;
+ var done = chrome.test.listenForever(chrome.cookies.onChanged,
+ function(info) {
+ if (info.removed) {
+ chrome.test.assertEq('overwrite', info.cause);
+ chrome.test.assertEq(OVERWRITE_COOKIE_PRE, info.cookie);
+ chrome.test.assertFalse(haveRemoved);
+ chrome.test.assertFalse(haveSet);
+ haveRemoved = true;
+ } else {
+ chrome.test.assertEq('explicit', info.cause);
+ chrome.test.assertEq(OVERWRITE_COOKIE_POST, info.cookie);
+ chrome.test.assertTrue(haveRemoved);
+ chrome.test.assertFalse(haveSet);
+ haveSet = true;
+ }
+ if (haveRemoved && haveSet) {
+ done();
+ }
+ });
chrome.cookies.set({
url: 'http://a.com/path',
name: 'testOverwrite',
value: '43',
expirationDate: 12345678900
- }, function () {
- chrome.cookies.onChanged.removeListener(listenerRemove);
- chrome.cookies.onChanged.removeListener(listenerSet);
});
},
function overwriteExpired() {
- var setCompleted = chrome.test.callbackAdded();
- var listener = function (info) {
+ chrome.test.listenOnce(chrome.cookies.onChanged, function (info) {
chrome.test.assertTrue(info.removed);
chrome.test.assertEq('expired_overwrite', info.cause);
chrome.test.assertEq(OVERWRITE_COOKIE_POST, info.cookie);
- setCompleted();
- };
- chrome.cookies.onChanged.addListener(listener);
+ });
chrome.cookies.set({
url: 'http://a.com/path',
name: 'testOverwrite',
value: '43',
expirationDate: 1
- }, function () {
- chrome.cookies.onChanged.removeListener(listener);
});
}
]);
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698