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
--- 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>