From 361086ec33dd0e8222af139c6377b34c9000ec01 Mon Sep 17 00:00:00 2001 From: ehmpee Date: Thu, 13 Apr 2017 11:51:31 -0400 Subject: [PATCH] Bug 1350648 - Replace defer with new Promise in devtools/client/netmonitor directory. r=tromey --HG-- extra : rebase_source : fe5662029211450f77354b129eab86b6c14dc67b --- .../netmonitor/test/browser_net_throttle.js | 8 +- devtools/client/netmonitor/test/head.js | 174 +++++++++--------- 2 files changed, 91 insertions(+), 91 deletions(-) diff --git a/devtools/client/netmonitor/test/browser_net_throttle.js b/devtools/client/netmonitor/test/browser_net_throttle.js index 10e3d144e5e3..5fce5ab5cbf0 100644 --- a/devtools/client/netmonitor/test/browser_net_throttle.js +++ b/devtools/client/netmonitor/test/browser_net_throttle.js @@ -42,11 +42,11 @@ function* throttleTest(actuallyThrottle) { let client = NetMonitorController.webConsoleClient; info("sending throttle request"); - let deferred = promise.defer(); - client.setPreferences(request, response => { - deferred.resolve(response); + yield new Promise((resolve) => { + client.setPreferences(request, response => { + resolve(response); + }); }); - yield deferred.promise; let eventPromise = monitor.panelWin.once(EVENTS.RECEIVED_EVENT_TIMINGS); yield NetMonitorController.triggerActivity(ACTIVITY_TYPE.RELOAD.WITH_CACHE_DISABLED); diff --git a/devtools/client/netmonitor/test/head.js b/devtools/client/netmonitor/test/head.js index bfe015355918..8129d40a3bb8 100644 --- a/devtools/client/netmonitor/test/head.js +++ b/devtools/client/netmonitor/test/head.js @@ -95,19 +95,19 @@ registerCleanupFunction(() => { }); function waitForNavigation(target) { - let deferred = promise.defer(); - target.once("will-navigate", () => { - target.once("navigate", () => { - deferred.resolve(); + return new Promise((resolve) => { + target.once("will-navigate", () => { + target.once("navigate", () => { + resolve(); + }); }); }); - return deferred.promise; } function reconfigureTab(target, options) { - let deferred = promise.defer(); - target.activeTab.reconfigure(options, deferred.resolve); - return deferred.promise; + return new Promise((resolve) => { + target.activeTab.reconfigure(options, resolve); + }); } function toggleCache(target, disabled) { @@ -179,82 +179,82 @@ function teardown(monitor) { } function waitForNetworkEvents(monitor, getRequests, postRequests = 0) { - let deferred = promise.defer(); - let panel = monitor.panelWin; - let { windowRequire } = panel; - let { NetMonitorController } = - windowRequire("devtools/client/netmonitor/src/netmonitor-controller"); - let progress = {}; - let genericEvents = 0; - let postEvents = 0; - let awaitedEventsToListeners = [ - ["UPDATING_REQUEST_HEADERS", onGenericEvent], - ["RECEIVED_REQUEST_HEADERS", onGenericEvent], - ["UPDATING_REQUEST_COOKIES", onGenericEvent], - ["RECEIVED_REQUEST_COOKIES", onGenericEvent], - ["UPDATING_REQUEST_POST_DATA", onPostEvent], - ["RECEIVED_REQUEST_POST_DATA", onPostEvent], - ["UPDATING_RESPONSE_HEADERS", onGenericEvent], - ["RECEIVED_RESPONSE_HEADERS", onGenericEvent], - ["UPDATING_RESPONSE_COOKIES", onGenericEvent], - ["RECEIVED_RESPONSE_COOKIES", onGenericEvent], - ["STARTED_RECEIVING_RESPONSE", onGenericEvent], - ["UPDATING_RESPONSE_CONTENT", onGenericEvent], - ["RECEIVED_RESPONSE_CONTENT", onGenericEvent], - ["UPDATING_EVENT_TIMINGS", onGenericEvent], - ["RECEIVED_EVENT_TIMINGS", onGenericEvent] - ]; + return new Promise((resolve) => { + let panel = monitor.panelWin; + let { windowRequire } = panel; + let { NetMonitorController } = + windowRequire("devtools/client/netmonitor/src/netmonitor-controller"); + let progress = {}; + let genericEvents = 0; + let postEvents = 0; + let awaitedEventsToListeners = [ + ["UPDATING_REQUEST_HEADERS", onGenericEvent], + ["RECEIVED_REQUEST_HEADERS", onGenericEvent], + ["UPDATING_REQUEST_COOKIES", onGenericEvent], + ["RECEIVED_REQUEST_COOKIES", onGenericEvent], + ["UPDATING_REQUEST_POST_DATA", onPostEvent], + ["RECEIVED_REQUEST_POST_DATA", onPostEvent], + ["UPDATING_RESPONSE_HEADERS", onGenericEvent], + ["RECEIVED_RESPONSE_HEADERS", onGenericEvent], + ["UPDATING_RESPONSE_COOKIES", onGenericEvent], + ["RECEIVED_RESPONSE_COOKIES", onGenericEvent], + ["STARTED_RECEIVING_RESPONSE", onGenericEvent], + ["UPDATING_RESPONSE_CONTENT", onGenericEvent], + ["RECEIVED_RESPONSE_CONTENT", onGenericEvent], + ["UPDATING_EVENT_TIMINGS", onGenericEvent], + ["RECEIVED_EVENT_TIMINGS", onGenericEvent] + ]; - function initProgressForURL(url) { - if (progress[url]) { - return; + function initProgressForURL(url) { + if (progress[url]) { + return; + } + progress[url] = {}; + awaitedEventsToListeners.forEach(function ([e]) { + progress[url][e] = 0; + }); } - progress[url] = {}; - awaitedEventsToListeners.forEach(function ([e]) { - progress[url][e] = 0; - }); - } - function updateProgressForURL(url, event) { - initProgressForURL(url); - progress[url][Object.keys(EVENTS).find(e => EVENTS[e] == event)] = 1; - } - - function onGenericEvent(event, actor) { - genericEvents++; - maybeResolve(event, actor); - } - - function onPostEvent(event, actor) { - postEvents++; - maybeResolve(event, actor); - } - - function maybeResolve(event, actor) { - info("> Network events progress: " + - genericEvents + "/" + ((getRequests + postRequests) * 13) + ", " + - postEvents + "/" + (postRequests * 2) + ", " + - "got " + event + " for " + actor); - - let networkInfo = NetMonitorController.webConsoleClient.getNetworkRequest(actor); - let url = networkInfo.request.url; - updateProgressForURL(url, event); - - // Uncomment this to get a detailed progress logging (when debugging a test) - // info("> Current state: " + JSON.stringify(progress, null, 2)); - - // There are 15 updates which need to be fired for a request to be - // considered finished. The "requestPostData" packet isn't fired for - // non-POST requests. - if (genericEvents >= (getRequests + postRequests) * 13 && - postEvents >= postRequests * 2) { - awaitedEventsToListeners.forEach(([e, l]) => panel.off(EVENTS[e], l)); - executeSoon(deferred.resolve); + function updateProgressForURL(url, event) { + initProgressForURL(url); + progress[url][Object.keys(EVENTS).find(e => EVENTS[e] == event)] = 1; } - } - awaitedEventsToListeners.forEach(([e, l]) => panel.on(EVENTS[e], l)); - return deferred.promise; + function onGenericEvent(event, actor) { + genericEvents++; + maybeResolve(event, actor); + } + + function onPostEvent(event, actor) { + postEvents++; + maybeResolve(event, actor); + } + + function maybeResolve(event, actor) { + info("> Network events progress: " + + genericEvents + "/" + ((getRequests + postRequests) * 13) + ", " + + postEvents + "/" + (postRequests * 2) + ", " + + "got " + event + " for " + actor); + + let networkInfo = NetMonitorController.webConsoleClient.getNetworkRequest(actor); + let url = networkInfo.request.url; + updateProgressForURL(url, event); + + // Uncomment this to get a detailed progress logging (when debugging a test) + // info("> Current state: " + JSON.stringify(progress, null, 2)); + + // There are 15 updates which need to be fired for a request to be + // considered finished. The "requestPostData" packet isn't fired for + // non-POST requests. + if (genericEvents >= (getRequests + postRequests) * 13 && + postEvents >= postRequests * 2) { + awaitedEventsToListeners.forEach(([e, l]) => panel.off(EVENTS[e], l)); + executeSoon(resolve); + } + } + + awaitedEventsToListeners.forEach(([e, l]) => panel.on(EVENTS[e], l)); + }); } function verifyRequestItemTarget(document, requestList, requestItem, method, @@ -385,9 +385,9 @@ function verifyRequestItemTarget(document, requestList, requestItem, method, * Returns a promise that resolves upon firing of the event. */ function waitFor(subject, eventName) { - let deferred = promise.defer(); - subject.once(eventName, deferred.resolve); - return deferred.promise; + return new Promise((resolve) => { + subject.once(eventName, resolve); + }); } /** @@ -500,10 +500,10 @@ function executeInContent(name, data = {}, objects = {}, expectResponse = true) function waitForContentMessage(name) { let mm = gBrowser.selectedBrowser.messageManager; - let def = promise.defer(); - mm.addMessageListener(name, function onMessage(msg) { - mm.removeMessageListener(name, onMessage); - def.resolve(msg); + return new Promise((resolve) => { + mm.addMessageListener(name, function onMessage(msg) { + mm.removeMessageListener(name, onMessage); + resolve(msg); + }); }); - return def.promise; }