Test PerformanceObserver mutating itself while in its callback. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". Observing: ["measure"] PASS PerformanceObserver callback fired PASS list.getEntries().length is 1 PASS list.getEntries()[0].entryType is "measure" PASS list.getEntries()[0].name is "measure1" Observing: ["mark"] - measure1 PASS PerformanceObserver callback fired PASS list.getEntries().length is 1 PASS list.getEntries()[0].entryType is "mark" PASS list.getEntries()[0].name is "mark2" Observing: ["measure"] - mark2 PASS PerformanceObserver callback fired PASS list.getEntries().length is 2 PASS list.getEntries()[0].entryType is "measure" PASS list.getEntries()[0].name is "measure3" PASS list.getEntries()[1].entryType is "mark" PASS list.getEntries()[1].name is "mark-before-change-observe-state-to-measure" Observing: ["mark","measure"] - measure3 - mark-before-change-observe-state-to-measure PASS PerformanceObserver callback fired PASS list.getEntries().length is 3 PASS list.getEntries()[0].entryType is "measure" PASS list.getEntries()[0].name is "measure-before-change-observe-state-to-both" PASS list.getEntries()[1].entryType is "measure" PASS list.getEntries()[1].name is "measure4" PASS list.getEntries()[2].entryType is "mark" PASS list.getEntries()[2].name is "mark4" - measure-before-change-observe-state-to-both - measure4 - mark4 PASS successfullyParsed is true TEST COMPLETE