tor-browser

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

mark-l3.any.js (1999B)


      1 // META: script=resources/user-timing-helper.js
      2 
      3 async_test(function (t) {
      4    let mark_entries = [];
      5    const expected_entries =
      6        [{ entryType: "mark", name: "mark1", detail: null},
      7        { entryType: "mark", name: "mark2", detail: null},
      8        { entryType: "mark", name: "mark3", detail: null},
      9        { entryType: "mark", name: "mark4", detail: null},
     10        { entryType: "mark", name: "mark5", detail: null},
     11        { entryType: "mark", name: "mark6", detail: {}},
     12        { entryType: "mark", name: "mark7", detail: {info: 'abc'}},
     13        { entryType: "mark", name: "mark8", detail: null, startTime: 234.56},
     14        { entryType: "mark", name: "mark9", detail: {count: 3}, startTime: 345.67}];
     15    const observer = new PerformanceObserver(
     16        t.step_func(function (entryList, obs) {
     17          mark_entries =
     18            mark_entries.concat(entryList.getEntries());
     19          if (mark_entries.length >= expected_entries.length) {
     20            checkEntries(mark_entries, expected_entries);
     21            observer.disconnect();
     22            t.done();
     23          }
     24        })
     25      );
     26    self.performance.clearMarks();
     27    observer.observe({entryTypes: ["mark"]});
     28    const returned_entries = [];
     29    returned_entries.push(self.performance.mark("mark1"));
     30    returned_entries.push(self.performance.mark("mark2", undefined));
     31    returned_entries.push(self.performance.mark("mark3", null));
     32    returned_entries.push(self.performance.mark("mark4", {}));
     33    returned_entries.push(self.performance.mark("mark5", {detail: null}));
     34    returned_entries.push(self.performance.mark("mark6", {detail: {}}));
     35    returned_entries.push(self.performance.mark("mark7", {detail: {info: 'abc'}}));
     36    returned_entries.push(self.performance.mark("mark8", {startTime: 234.56}));
     37    returned_entries.push(self.performance.mark("mark9", {detail: {count: 3}, startTime: 345.67}));
     38    checkEntries(returned_entries, expected_entries);
     39 }, "mark entries' detail and startTime are customizable.");