tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

measure-l3.any.js (1751B)


      1 // META: script=resources/user-timing-helper.js
      2 
      3 function endTime(entry) {
      4  return entry.startTime + entry.duration;
      5 }
      6 
      7 test(function() {
      8  performance.clearMarks();
      9  performance.clearMeasures();
     10  const markEntry = performance.mark("mark", {startTime: 123});
     11  const measureEntry = performance.measure("A", undefined, "mark");
     12  assert_equals(measureEntry.startTime, 0);
     13  assert_equals(endTime(measureEntry), markEntry.startTime);
     14 }, "When the end mark is given and the start is unprovided, the end time of the measure entry should be the end mark's time, the start time should be 0.");
     15 
     16 test(function() {
     17  performance.clearMarks();
     18  performance.clearMeasures();
     19  const markEntry = performance.mark("mark", {startTime: 123});
     20  const endMin = Number(performance.now().toFixed(2));
     21  const measureEntry = performance.measure("A", "mark", undefined);
     22  const endMax = Number(performance.now().toFixed(2));
     23  assert_equals(measureEntry.startTime, markEntry.startTime);
     24  assert_greater_than_equal(Number(endTime(measureEntry).toFixed(2)), endMin);
     25  assert_greater_than_equal(endMax, Number(endTime(measureEntry).toFixed(2)));
     26 }, "When the start mark is given and the end is unprovided, the start time of the measure entry should be the start mark's time, the end should be now.");
     27 
     28 test(function() {
     29  performance.clearMarks();
     30  performance.clearMeasures();
     31  const markEntry = performance.mark("mark", {startTime: 123});
     32  const measureEntry = performance.measure("A", "mark", "mark");
     33  assert_equals(endTime(measureEntry), markEntry.startTime);
     34  assert_equals(measureEntry.startTime, markEntry.startTime);
     35 }, "When start and end mark are both given, the start time and end time of the measure entry should be the marks' time, repectively");