Bug 1207702 - Fix a bug in test_promises_object_timetosettle-02.js;r=fitzgen
authorEddy Bruel <ejpbruel@mozilla.com>
Wed, 11 Nov 2015 22:21:16 +0100
changeset 308412 dd627c83397a2be0216a881e6a58e5f5f5675cdd
parent 308411 6e940538a1718ca8f2fba26b50dc1a44046ac916
child 308413 6eb43418296a30fe5e1ca7482d4efbdcae740397
push id7470
push users.kaspari@gmail.com
push dateThu, 12 Nov 2015 12:51:02 +0000
reviewersfitzgen
bugs1207702
milestone45.0a1
Bug 1207702 - Fix a bug in test_promises_object_timetosettle-02.js;r=fitzgen
devtools/server/tests/unit/test_promises_object_timetosettle-02.js
--- a/devtools/server/tests/unit/test_promises_object_timetosettle-02.js
+++ b/devtools/server/tests/unit/test_promises_object_timetosettle-02.js
@@ -10,25 +10,27 @@
 const { PromisesFront } = require("devtools/server/actors/promises");
 const { setTimeout } = require("sdk/timers");
 
 var events = require("sdk/event/core");
 
 add_task(function*() {
   let client = yield startTestDebuggerServer("test-promises-timetosettle");
   let chromeActors = yield getChromeActors(client);
+  yield attachTab(client, chromeActors);
 
   ok(Promise.toString().contains("native code"), "Expect native DOM Promise.");
 
   yield testGetTimeToSettle(client, chromeActors,
     v => new Promise(resolve => setTimeout(() => resolve(v), 100)));
 
   let response = yield listTabs(client);
   let targetTab = findTab(response.tabs, "test-promises-timetosettle");
   ok(targetTab, "Found our target tab.");
+  yield attachTab(client, targetTab);
 
   yield testGetTimeToSettle(client, targetTab, v => {
     const debuggee =
       DebuggerServer.getTestGlobal("test-promises-timetosettle");
     return new debuggee.Promise(resolve => setTimeout(() => resolve(v), 100));
   });
 
   yield close(client);
@@ -42,19 +44,20 @@ function* testGetTimeToSettle(client, fo
   yield front.attach();
   yield front.listPromises();
 
   let onNewPromise = new Promise(resolve => {
     events.on(front, "promises-settled", promises => {
       for (let p of promises) {
         if (p.promiseState.state === "fulfilled" &&
             p.promiseState.value === resolution) {
-          equal(Math.floor(p.promiseState.timeToSettle / 100) * 100, 100,
+          let timeToSettle = Math.floor(p.promiseState.timeToSettle / 100) * 100;
+          ok(timeToSettle >= 100,
             "Expect time to settle for resolved promise to be " +
-            "approximately 100ms.");
+            "at least 100ms, got " + timeToSettle + "ms.");
           found = true;
           resolve();
         } else {
           dump("Found non-target promise.\n");
         }
       }
     });
   });