Bug 1332869 - Fix Intermittent browser_devices_get_user_media_in_frame.js; r=florian draft
authorMunro Mengjue Chiang <mchiang@mozilla.com>
Fri, 03 Feb 2017 15:44:14 +0800
changeset 487283 286583c22238b02ecc585777e62f16acaf557e80
parent 487236 d84beb192e57e26846c82d3df3599381f4663792
child 546427 d16097d8b3c6756d0d1a7e4ad38a5f5be33472ba
push id46189
push usermchiang@mozilla.com
push dateTue, 21 Feb 2017 08:20:19 +0000
reviewersflorian
bugs1332869
milestone54.0a1
Bug 1332869 - Fix Intermittent browser_devices_get_user_media_in_frame.js; r=florian MozReview-Commit-ID: E968LugF7Rp
browser/base/content/test/webrtc/browser_devices_get_user_media_in_frame.js
--- a/browser/base/content/test/webrtc/browser_devices_get_user_media_in_frame.js
+++ b/browser/base/content/test/webrtc/browser_devices_get_user_media_in_frame.js
@@ -95,22 +95,22 @@ var gTests = [
     yield expectObserverCalled("recording-device-events");
     Assert.deepEqual((yield getMediaCaptureState()), {audio: true, video: true},
                      "expected camera and microphone to be shared");
 
     yield indicator;
     yield checkSharingUI({video: true, audio: true});
 
     info("reloading the frame");
-    promise = promiseObserverCalled("recording-device-stopped");
+    let promises = [promiseObserverCalled("recording-device-stopped"),
+                    promiseObserverCalled("recording-device-events"),
+                    promiseObserverCalled("recording-window-ended")];
     yield promiseReloadFrame("frame1");
-    yield promise;
+    yield Promise.all(promises);
 
-    yield expectObserverCalled("recording-device-events");
-    yield expectObserverCalled("recording-window-ended");
     yield expectNoObserverCalled();
     yield checkNotSharing();
   }
 },
 
 {
   desc: "getUserMedia audio+video: reloading the frame removes prompts",
   run: function* checkReloadingRemovesPrompts() {