Bug 1309865: Don't expect that an event will be fired within a given time. r?gerald draft
authorJean-Yves Avenard <jyavenard@mozilla.com>
Tue, 20 Dec 2016 12:53:09 +1100
changeset 451224 25d59740fcc3fcaa280e329aad5644c0ec4d1bef
parent 451223 10d7d031279410e82d5ec3d7f0136df595a6a683
child 539968 dadaba1addd56d6156ea04b6515f8e6a09d5a72b
push id39101
push userbmo:jyavenard@mozilla.com
push dateTue, 20 Dec 2016 01:53:52 +0000
reviewersgerald
bugs1309865
milestone53.0a1
Bug 1309865: Don't expect that an event will be fired within a given time. r?gerald We only care that we will enter suspended mode after a minimal time. On slow machines (like the linux try box) there are so many things at play that could delay a particular event. So we remove the upper time test. MozReview-Commit-ID: IAZVyuetYVp
dom/media/test/test_background_video_suspend.html
--- a/dom/media/test/test_background_video_suspend.html
+++ b/dom/media/test/test_background_video_suspend.html
@@ -5,44 +5,46 @@
 <script src="manifest.js"></script>
 <script src="background_video.js"></script>
 <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
 <script type="text/javascript">
 "use strict";
 
 var manager = new MediaTestManager;
 
-function testDelay(v, start, min, max) {
+var MIN_DELAY = 100;
+
+function testDelay(v, start, min) {
   let end = performance.now();
   let delay = end - start;
-  ok(delay > min && delay < max, `${v.token} suspended with a delay of ${delay} ms`);
+  ok(delay > min, `${v.token} suspended with a delay of ${delay} ms`);
 }
 
 startTest({
   desc: 'Test Background Video Suspends',
   prefs: [
     [ "media.test.setVisible", true ],
     [ "media.suspend-bkgnd-video.enabled", true ],
     // User a short delay to ensure video decode suspend happens before end
     // of video.
-    [ "media.suspend-bkgnd-video.delay-ms", 100 ]
+    [ "media.suspend-bkgnd-video.delay-ms", MIN_DELAY ]
   ],
   tests: gDecodeSuspendTests,
   runTest: (test, token) => {
     let v = appendVideoToDoc(test.name, token);
     manager.started(token);
 
     let start;
     waitUntilPlaying(v)
       .then(() => { start = performance.now(); })
       .then(() => testVideoSuspendsWhenHidden(v))
       .then(() => {
-        testDelay(v, start, 100, 1000);
+        testDelay(v, start, MIN_DELAY);
         return testVideoResumesWhenShown(v);
       })
       .then(() => waitUntilEnded(v))
       .then(() => {
         removeNodeAndSource(v);
         manager.finished(token);
       });
   }
 });
-</script>
\ No newline at end of file
+</script>