| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="UTF-8"> |
| <script src="/js-test-resources/js-test.js"></script> |
| <script src="resources/util.js"></script> |
| </head> |
| <body> |
| <script> |
| description("Test that a non-redirected top frame navigation doesn't get captured in statistics."); |
| jsTestIsAsync = true; |
| testRunner.setUseITPDatabase(true); |
| let timerHandle = 0; |
| |
| function finishTest() { |
| if (timerHandle) |
| clearTimeout(timerHandle); |
| |
| shouldBeFalse('testRunner.isStatisticsRegisteredAsSubFrameUnder("http://localhost", "http://127.0.0.1")'); |
| shouldBeFalse('testRunner.isStatisticsRegisteredAsSubFrameUnder("http://127.0.0.1", "http://localhost")'); |
| setEnableFeature(false, finishJSTest); |
| } |
| |
| function runTest() { |
| switch (document.location.host) { |
| case "127.0.0.1:8000": |
| setEnableFeature(true, function() { |
| if (testRunner.isStatisticsPrevalentResource("http://localhost:8000")) |
| testFailed("Localhost was classified as prevalent resource before the test starts."); |
| document.location.href = "http://localhost:8000/resourceLoadStatistics/do-not-capture-statistics-for-simple-top-navigations.html"; |
| }); |
| break; |
| case "localhost:8000": |
| testRunner.setStatisticsNotifyPagesWhenDataRecordsWereScanned(true); |
| testRunner.installStatisticsDidScanDataRecordsCallback(finishTest); |
| if (!testRunner.statisticsNotifyObserver()) |
| timerHandle = setTimeout(finishTest, 100); |
| break; |
| default: |
| testFailed("Unknown host: " + document.location.host); |
| finishTest(); |
| } |
| } |
| |
| if (window.testRunner && window.internals) |
| runTest(); |
| </script> |
| </body> |
| </html> |