| <!doctype html> |
| <html> |
| <head> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| </head> |
| <body> |
| <script> |
| const keys = [ |
| 'name', |
| 'entryType', |
| 'startTime', |
| 'duration', |
| ]; |
| test(() => { |
| performance.mark('a'); |
| const markEntries = performance.getEntriesByType('mark'); |
| assert_equals(1, markEntries.length); |
| const markEntry = markEntries[0]; |
| assert_equals(markEntry.entryType, 'mark'); |
| assert_equals(typeof(markEntry.toJSON), 'function'); |
| const markJSON = markEntry.toJSON(); |
| assert_equals(typeof(markJSON), 'object'); |
| for (const key of keys) { |
| assert_equals(markJSON[key], markEntry[key], `PerformanceMark ${key} entry does not match its toJSON value`); |
| } |
| }, 'Test toJSON() in PerformanceMark'); |
| |
| test(() => { |
| performance.measure('m'); |
| const measureEntries = performance.getEntriesByType('measure'); |
| assert_equals(1, measureEntries.length); |
| const measureEntry = measureEntries[0]; |
| assert_equals(measureEntry.entryType, 'measure'); |
| assert_equals(typeof(measureEntry.toJSON), 'function'); |
| const measureJSON = measureEntry.toJSON(); |
| assert_equals(typeof(measureJSON), 'object'); |
| for (const key of keys) { |
| assert_equals(measureJSON[key], measureEntry[key], `PerformanceMeasure ${key} entry does not match its toJSON value`); |
| } |
| }, 'Test toJSON() in PerformanceMeasure'); |
| </script> |
| </body> |
| </html> |