Bug 1430173 - Update tests for 2ms timers. r=baku, a=RyanVM

MozReview-Commit-ID: 6xhQ71a5rDU

--HG--
extra : transplant_source : %C2%D3%A7It%0Cg%92h%BB%3A%95%A2%0D.%86%B9C%9B%2B
This commit is contained in:
Tom Ritter
2018-02-20 15:36:16 -06:00
committed by wolfbeast
parent f0b727eac2
commit b367c38241
12 changed files with 41 additions and 25 deletions
+3 -2
View File
@@ -70,8 +70,9 @@ window.onload = function() {
if (lastTimestamp) {
var delta = timestamp - lastTimestamp;
info("delta since last timestamp", delta);
ok(delta >= 1 /* ms */,
"The timestamp should be about 1 ms after the last timestamp.");
// If we're unlucky, we might have rounded down to 0ms
// ok(delta >= 1 /* ms */,
// "The timestamp should be about 1 ms after the last timestamp.");
}
lastTimestamp = timestamp;
+2 -2
View File
@@ -61,7 +61,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=453650
}
info("times: " + start + ", " + end);
ok(start < end, "reflow start time lower than end time");
ok(start <= end, "reflow start time lower than end time");
done();
},
@@ -73,7 +73,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=453650
}
info("times: " + start + ", " + end);
ok(start < end, "reflow start time lower than end time");
ok(start <= end, "reflow start time lower than end time");
done();
},
+4 -3
View File
@@ -38,7 +38,8 @@ function onOpened(message) {
ok("lastModifiedDate" in domFile, "lastModifiedDate must be present");
var d = new Date(message.mtime);
is(d.getTime(), domFile.lastModifiedDate.getTime(), "lastModifiedDate should be the same");
// Commented out: lastModifiedDate is rounded because it is a DOM API, message is a special-powers Chrome thing
// is(d.getTime(), domFile.lastModifiedDate.getTime(), "lastModifiedDate should be the same");
var x = new Date();
@@ -53,8 +54,8 @@ function onOpened(message) {
ok((x.getTime() <= y.getTime()) && (y.getTime() <= z.getTime()), "lastModifiedDate of file which does not have last modified date should be current time");
var d = new Date(message.fileDate);
is(d.getTime(), message.fileWithDate.lastModifiedDate.getTime(), "lastModifiedDate should be the same when lastModified is set: " + message.fileWithDate.lastModified);
// var d = new Date(message.fileDate);
// is(d.getTime(), message.fileWithDate.lastModifiedDate.getTime(), "lastModifiedDate should be the same when lastModified is set: " + message.fileWithDate.lastModified);
script.destroy();
SimpleTest.finish();
+3 -3
View File
@@ -22,13 +22,13 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1158437
var blob = new Blob(['hello world']);
var f1 = new File([blob], 'f1.txt', { lastModified: 0 });
var f2 = new File([blob], 'f2.txt', { lastModified: -1 });
var f2 = new File([blob], 'f2.txt', { lastModified: -2 });
var f3 = new File([blob], 'f3.txt', { lastModified: -1000 });
is(f1.lastModified, 0, "lastModified == 0 is supported");
ok(f1.lastModifiedDate.toString(), (new Date(0)).toString(), "Correct f1.lastModifiedDate value");
is(f2.lastModified, -1, "lastModified == -1 is supported");
ok(f2.lastModifiedDate.toString(), (new Date(-1)).toString(), "Correct f2.lastModifiedDate value");
is(f2.lastModified, -2, "lastModified == -2 is supported");
ok(f2.lastModifiedDate.toString(), (new Date(-2)).toString(), "Correct f2.lastModifiedDate value");
is(f3.lastModified, -1000, "lastModified == -1000 is supported");
ok(f3.lastModifiedDate.toString(), (new Date(-1000)).toString(), "Correct f3.lastModifiedDate value");
+14 -12
View File
@@ -60,8 +60,8 @@ function testRegularEvents() {
var timeBeforeEvent = window.performance.now();
window.addEventListener("load", function(evt) {
var timeAfterEvent = window.performance.now();
ok(evt.timeStamp > timeBeforeEvent &&
evt.timeStamp < timeAfterEvent,
ok(evt.timeStamp >= timeBeforeEvent &&
evt.timeStamp <= timeAfterEvent,
"Event timestamp (" + evt.timeStamp + ") is in expected range: (" +
timeBeforeEvent + ", " + timeAfterEvent + ")");
testWorkerEvents();
@@ -74,11 +74,12 @@ function testWorkerEvents() {
var worker = new Worker(window.URL.createObjectURL(blob));
worker.onmessage = function(evt) {
var timeAfterEvent = window.performance.now();
ok(evt.data > timeBeforeEvent &&
evt.data < timeAfterEvent,
"Event timestamp in dedicated worker (" + evt.data +
") is in expected range: (" +
timeBeforeEvent + ", " + timeAfterEvent + ")");
// Comparing times across timelines may break now
// ok(evt.data >= timeBeforeEvent &&
// evt.data <= timeAfterEvent,
// "Event timestamp in dedicated worker (" + evt.data +
// ") is in expected range: (" +
// timeBeforeEvent + ", " + timeAfterEvent + ")");
worker.terminate();
testSharedWorkerEvents();
};
@@ -97,11 +98,12 @@ function testSharedWorkerEvents() {
var worker = new SharedWorker(window.URL.createObjectURL(blob));
worker.port.onmessage = function(evt) {
var timeAfterEvent = window.performance.now();
ok(evt.data > 0 &&
evt.data < timeAfterEvent - timeBeforeWorkerCreation,
"Event timestamp in shared worker (" + evt.data +
") is in expected range: (0, " +
(timeAfterEvent - timeBeforeWorkerCreation) + ")");
// Comparing times across timelines may break now
// ok(evt.data >= 0 &&
// evt.data <= timeAfterEvent - timeBeforeWorkerCreation,
// "Event timestamp in shared worker (" + evt.data +
// ") is in expected range: (0, " +
// (timeAfterEvent - timeBeforeWorkerCreation) + ")");
worker.port.close();
finishTests();
};
+2 -1
View File
@@ -38,7 +38,8 @@ function startTest(test) {
var stream;
var checkEnded = function() {
is(stream.currentTime, vout.currentTime, test.name + " stream final currentTime");
// We know the video time won't match up to the stream time
// is(stream.currentTime, vout.currentTime, test.name + " stream final currentTime");
if (test.duration) {
isGreaterThanOrEqualEps(vout.currentTime, test.duration,
test.name + " current time at end");
+2 -1
View File
@@ -38,7 +38,8 @@ function startTest(test, token) {
var stream;
var checkEnded = function() {
is(stream.currentTime, vout.currentTime, test.name + " stream final currentTime");
// We know the video time won't match up to the stream time
// is(stream.currentTime, vout.currentTime, test.name + " stream final currentTime");
if (test.duration) {
isGreaterThanOrEqualEps(vout.currentTime, test.duration,
test.name + " current time at end");
@@ -2,4 +2,6 @@
type: testharness
[Test the totalFrameDelay attribute of HTMLVideoElement.getVideoPlaybackQuality() with MediaSource API]
expected: FAIL
[Test HTMLVideoElement.getVideoPlaybackQuality() with MediaSource API]
disabled: Because we do timer rounding, sometimes the test passes, othertimes it fails
@@ -2,4 +2,6 @@
type: testharness
[Resource Timing]
expected: FAIL
[User Timing]
disabled: Because we do timer rounding, sometimes the test passes, othertimes it fails
@@ -0,0 +1,3 @@
[retrospective-setValueAtTime.html]
[Test setValueAtTime with startTime in the past]
disabled: Because we do timer rounding, sometimes the test passes, othertimes it fails
@@ -0,0 +1,3 @@
[current-time-block-size.html]
[Test currentTime at completion of OfflineAudioContext rendering]
disabled: Because we do timer rounding, sometimes the test passes, othertimes it fails
@@ -229,7 +229,7 @@ function runTest(event) {
is(event.type, "seeked", "checking event type");
ok(true, "video position is at " + video.currentTime);
var expectedTime = videoDuration / 2;
ok(Math.abs(video.currentTime - expectedTime) < 0.1, "checking expected playback position");
ok(Math.abs(video.currentTime - expectedTime) < 0.1, "checking expected playback position Math.abs(" + video.currentTime + " - " + expectedTime + ") < .1");
SimpleTest.executeSoon(() => {
synthesizeMouse(video, scrubberOffsetX + (scrubberWidth / 4), scrubberCenterY, { });