| <!DOCTYPE html><!-- webkit-test-runner [ internal:WebAPIStatisticsEnabled=true ] --> |
| <head> |
| <meta charset="UTF-8"> |
| <title>Test for font loading data collection in resource load statistics</title> |
| </head> |
| <script> |
| internals.setResourceLoadStatisticsEnabled(false); |
| </script> |
| <body> |
| <p> Tests for font loading data collection in ResourceLoadStatistics plist by loading fonts and dumping the entire resource load statistics map. The test tries to load various fonts through a comma separated font-family list to draw a string with many m's since they differ in width more prominently among fonts. </p> |
| <script> |
| const hostUnderTest = "127.0.0.1:8000"; |
| const statisticsUrl = "http://" + hostUnderTest + "/temp"; |
| |
| function completeTest() { |
| testRunner.statisticsResetToConsistentState(function() { |
| testRunner.notifyDone(); |
| }); |
| } |
| |
| function runTestRunnerTest() { |
| testRunner.setStatisticsNotifyPagesWhenDataRecordsWereScanned(true); |
| |
| testRunner.installStatisticsDidScanDataRecordsCallback(completeTest); |
| |
| var body = document.getElementsByTagName('body')[0] |
| |
| var span = document.createElement('span'); |
| var testFontString = 'mmmmmmmmmmlli'; |
| |
| span.innerHTML = testFontString; |
| span.style.fontFamily = 'Andale, Fransiscan, notARealFont, serif'; |
| body.appendChild(span); |
| // Adds a timeout to allow font loads to be recorded. |
| setTimeout(function() { |
| testRunner.statisticsNotifyObserver(); |
| }, 0); |
| } |
| |
| if (document.location.host === hostUnderTest && window.testRunner && window.internals) { |
| testRunner.dumpAsText(); |
| testRunner.dumpResourceLoadStatistics(); |
| testRunner.waitUntilDone(); |
| internals.setResourceLoadStatisticsEnabled(true); |
| testRunner.setWebAPIStatisticsEnabled(true); |
| runTestRunnerTest(); |
| } |
| </script> |
| </body> |
| </html> |