blob: 2e33b32405b9bdbf9f3a40eac6e04a0410ce1ae9 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body>
<span id="e"></span>
<span id="f"></span>
<script>
description("Tests the timestamps from performance.now increase and are in milliseconds");
function busyWait(millis) {
var start = Date.now();
while (Date.now() - start < millis) {}
}
var firstTimestamp = window.performance.now();
shouldBeDefined("firstTimestamp");
shouldBeGreaterThanOrEqual("firstTimestamp", "0");
// Verify returned value is in milliseconds since navigationStart. This
// generously assumes this JS will run within the first 5 seconds while ruling
// out the possibility that the returned value is in milliseconds since epoch.
shouldBeTrue("firstTimestamp < 5000");
var waitTime = 10;
busyWait(waitTime);
var secondTimestamp = window.performance.now();
shouldBeDefined("secondTimestamp");
shouldBeGreaterThanOrEqual("secondTimestamp", "firstTimestamp + (waitTime / 2)");
// Verify that the difference is in the milliseconds range, keeping
// the range test broad to avoid issues on overloaded bots.
var elapsed = secondTimestamp - firstTimestamp;
shouldBeGreaterThanOrEqual("elapsed", "1");
shouldBeTrue("elapsed < 100");
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>