Bug 976544 - Intermittent | browser_get_user_media.js | Unexpected Exception: TypeError: PopupNotifications.panel.firstChild is null - fourth attempt, r=Gijs.
authorFlorian Quèze <florian@queze.net>
Thu, 13 Mar 2014 13:45:34 +0100
changeset 190676 1d0e1126f1da716df608871bcf88fd5397486e92
parent 190675 00a016605d9e874d716f526f341582f5aab66806
child 190677 f33b136050106e4dec3d27b6df3474b84ec4b4fd
push id3503
push userraliiev@mozilla.com
push dateMon, 28 Apr 2014 18:51:11 +0000
treeherdermozilla-beta@c95ac01e332e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersGijs
bugs976544
milestone30.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 976544 - Intermittent | browser_get_user_media.js | Unexpected Exception: TypeError: PopupNotifications.panel.firstChild is null - fourth attempt, r=Gijs.
browser/base/content/test/general/browser.ini
browser/base/content/test/general/browser_devices_get_user_media.js
browser/base/content/test/general/browser_get_user_media.js
--- a/browser/base/content/test/general/browser.ini
+++ b/browser/base/content/test/general/browser.ini
@@ -207,24 +207,24 @@ skip-if = os == "mac" # Intermittent fai
 [browser_canonizeURL.js]
 [browser_contentAreaClick.js]
 [browser_contextSearchTabPosition.js]
 skip-if = os == "mac" # bug 967013, bug 926729
 [browser_ctrlTab.js]
 [browser_customize_popupNotification.js]
 [browser_datareporting_notification.js]
 run-if = datareporting
+[browser_devices_get_user_media.js]
 [browser_discovery.js]
 [browser_duplicateIDs.js]
 [browser_drag.js]
 skip-if = true # browser_drag.js is disabled, as it needs to be updated for the new behavior from bug 320638.
 [browser_findbarClose.js]
 [browser_fullscreen-window-open.js]
 [browser_gestureSupport.js]
-[browser_get_user_media.js]
 [browser_getshortcutoruri.js]
 [browser_hide_removing.js]
 [browser_homeDrop.js]
 [browser_identity_UI.js]
 [browser_keywordBookmarklets.js]
 [browser_keywordSearch.js]
 [browser_keywordSearch_postData.js]
 [browser_lastAccessedTab.js]
rename from browser/base/content/test/general/browser_get_user_media.js
rename to browser/base/content/test/general/browser_devices_get_user_media.js
--- a/browser/base/content/test/general/browser_get_user_media.js
+++ b/browser/base/content/test/general/browser_devices_get_user_media.js
@@ -79,16 +79,17 @@ function promiseMessage(aMessage, aActio
 
 function promisePopupNotificationShown(aName, aAction) {
   let deferred = Promise.defer();
 
   PopupNotifications.panel.addEventListener("popupshown", function popupNotifShown() {
     PopupNotifications.panel.removeEventListener("popupshown", popupNotifShown);
 
     ok(!!PopupNotifications.getNotification(aName), aName + " notification shown");
+    ok(PopupNotifications.isPanelOpen, "notification panel open");
     ok(!!PopupNotifications.panel.firstChild, "notification panel populated");
 
     deferred.resolve();
   });
 
   if (aAction)
     aAction();
 
@@ -747,16 +748,19 @@ function test() {
   tab.linkedBrowser.addEventListener("load", function onload() {
     tab.linkedBrowser.removeEventListener("load", onload, true);
 
     kObservedTopics.forEach(topic => {
       Services.obs.addObserver(observer, topic, false);
     });
     Services.prefs.setBoolPref(PREF_PERMISSION_FAKE, true);
 
+    is(PopupNotifications._currentNotifications.length, 0,
+       "should start the test without any prior popup notification");
+
     Task.spawn(function () {
       for (let test of gTests) {
         info(test.desc);
         yield test.run();
 
         // Cleanup before the next test
         expectNoObserverCalled();
       }