Diff
Modified: trunk/LayoutTests/ChangeLog (227941 => 227942)
--- trunk/LayoutTests/ChangeLog 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/ChangeLog 2018-02-01 00:08:01 UTC (rev 227942)
@@ -1,3 +1,32 @@
+2018-01-31 Michael Catanzaro <mcatanz...@igalia.com>
+
+ Unreviewed, rolling out r227875.
+ https://bugs.webkit.org/show_bug.cgi?id=182357
+
+ Missing cross-platform TestController implementation
+
+ Reverted changeset:
+
+ "Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()"
+ https://bugs.webkit.org/show_bug.cgi?id=181958
+ https://trac.webkit.org/changeset/227875
+
+ * http/tests/resourceLoadStatistics/add-blocking-to-redirect-expected.txt:
+ * http/tests/resourceLoadStatistics/add-blocking-to-redirect.html:
+ * http/tests/resourceLoadStatistics/add-partitioning-to-redirect-expected.txt:
+ * http/tests/resourceLoadStatistics/add-partitioning-to-redirect.html:
+ * http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context.html:
+ * http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html:
+ * http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-with-partitioning-timeout.html:
+ * http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction-expected.txt:
+ * http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction.html:
+ * http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt:
+ * http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html:
+ * http/tests/resourceLoadStatistics/remove-partitioning-in-redirect-expected.txt:
+ * http/tests/resourceLoadStatistics/remove-partitioning-in-redirect.html:
+ * http/tests/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html:
+ * platform/mac-wk2/TestExpectations:
+
2018-01-31 Said Abou-Hallawa <sabouhall...@apple.com>
BitmapImage::drawPattern() may not draw a complete frame even after all the data is received
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/add-blocking-to-redirect-expected.txt (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/add-blocking-to-redirect-expected.txt 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/add-blocking-to-redirect-expected.txt 2018-02-01 00:08:01 UTC (rev 227942)
@@ -6,8 +6,8 @@
PASS successfullyParsed is true
TEST COMPLETE
-
+
--------
Frame: '<!--framePath //<!--frame0-->-->'
--------
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/add-blocking-to-redirect.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/add-blocking-to-redirect.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/add-blocking-to-redirect.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<script src=""
</head>
-<body>
+<body _onload_="runTest()">
<script>
description("Tests that blocking is added mid-flight in redirects.");
jsTestIsAsync = true;
@@ -16,6 +16,16 @@
testRunner.setCookieStoragePartitioningEnabled(enable);
}
+ if (document.location.hash === "") {
+ setEnableFeature(true);
+ if (testRunner.isStatisticsPrevalentResource("http://localhost"))
+ testFailed("Localhost was classified as prevalent resource before the test starts.");
+ // Make sure the network process is up-to-date.
+ testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false);
+ testRunner.dumpChildFramesAsText();
+ document.location.hash = "step1";
+ }
+
const partitionHost = "127.0.0.1:8000";
const thirdPartyOrigin = "http://localhost:8000";
const resourcePath = "/resourceLoadStatistics/resources";
@@ -57,11 +67,10 @@
// Set localhost as prevalent and with no user interaction to put it in the blocking category.
document.location.hash = "step5";
testRunner.setStatisticsPrevalentResource("http://localhost", true);
+ testRunner.statisticsUpdateCookiePartitioning();
if (!testRunner.isStatisticsPrevalentResource("http://localhost"))
testFailed("Host did not get set as prevalent resource.");
- testRunner.statisticsUpdateCookiePartitioning(function() {
- runTest();
- });
+ runTest();
break;
case "#step5":
// Check that no cookie gets sent for localhost under 127.0.0.1 since localhost's cookies are blocked.
@@ -94,18 +103,6 @@
break;
}
}
-
- if (document.location.hash === "") {
- setEnableFeature(true);
- if (testRunner.isStatisticsPrevalentResource("http://localhost"))
- testFailed("Localhost was classified as prevalent resource before the test starts.");
- testRunner.dumpChildFramesAsText();
- document.location.hash = "step1";
- // Make sure the network process is up-to-date.
- testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false, runTest);
- } else {
- runTest();
- }
</script>
</body>
</html>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/add-partitioning-to-redirect-expected.txt (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/add-partitioning-to-redirect-expected.txt 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/add-partitioning-to-redirect-expected.txt 2018-02-01 00:08:01 UTC (rev 227942)
@@ -6,8 +6,8 @@
PASS successfullyParsed is true
TEST COMPLETE
-
+
--------
Frame: '<!--framePath //<!--frame0-->-->'
--------
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/add-partitioning-to-redirect.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/add-partitioning-to-redirect.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/add-partitioning-to-redirect.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<script src=""
</head>
-<body>
+<body _onload_="runTest()">
<script>
description("Tests that partitioning is added mid-flight in redirects.");
jsTestIsAsync = true;
@@ -16,6 +16,16 @@
testRunner.setCookieStoragePartitioningEnabled(enable);
}
+ if (document.location.hash === "") {
+ setEnableFeature(true);
+ if (testRunner.isStatisticsPrevalentResource("http://localhost"))
+ testFailed("Localhost was classified as prevalent resource before the test starts.");
+ // Make sure the network process is up-to-date.
+ testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false);
+ testRunner.dumpChildFramesAsText();
+ document.location.hash = "step1";
+ }
+
const partitionHost = "127.0.0.1:8000";
const thirdPartyOrigin = "http://localhost:8000";
const resourcePath = "/resourceLoadStatistics/resources";
@@ -57,12 +67,11 @@
// Set localhost as prevalent and with non-recent user interaction to put it in the partitioning category.
document.location.hash = "step5";
testRunner.setStatisticsPrevalentResource("http://localhost", true);
+ testRunner.setStatisticsHasHadNonRecentUserInteraction("http://localhost");
+ testRunner.statisticsUpdateCookiePartitioning();
if (!testRunner.isStatisticsPrevalentResource("http://localhost"))
testFailed("Host did not get set as prevalent resource.");
- testRunner.setStatisticsHasHadNonRecentUserInteraction("http://localhost");
- testRunner.statisticsUpdateCookiePartitioning(function() {
- runTest();
- });
+ runTest();
break;
case "#step5":
// Check that no cookie gets sent for localhost under 127.0.0.1 since localhost is partitioned.
@@ -95,18 +104,6 @@
break;
}
}
-
- if (document.location.hash === "") {
- setEnableFeature(true);
- if (testRunner.isStatisticsPrevalentResource("http://localhost"))
- testFailed("Localhost was classified as prevalent resource before the test started.");
- testRunner.dumpChildFramesAsText();
- document.location.hash = "step1";
- // Make sure the network process is up-to-date.
- testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false, runTest);
- } else {
- runTest();
- }
</script>
</body>
</html>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -60,21 +60,17 @@
openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should receive one cookie.", runTest);
break;
case "#step3":
- // Setup localhost for partitioning.
+ // Setup localhost for partitioning and set a partitioned cookie for localhost under 127.0.0.1.
document.location.hash = "step4";
- testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, true, runTest);
+ testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, true);
+ openIframe(thirdPartyBaseUrl + subPathToSetPartitionedCookie + "&message=Setting partitioned, third party cookie.", runTest);
break;
case "#step4":
- // Set a partitioned cookie for localhost under 127.0.0.1.
+ // Load localhost under 127.0.0.1 and check that it gets only the partitioned cookie. End by aquiring user interaction for localhost.
document.location.hash = "step5";
- openIframe(thirdPartyBaseUrl + subPathToSetPartitionedCookie + "&message=Setting partitioned, third party cookie.", runTest);
+ openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should receive one partitioned, third party cookie.", setUserInteractionAndContinue);
break;
case "#step5":
- // Load localhost under 127.0.0.1 and check that it gets only the partitioned cookie. End by acquiring user interaction for localhost.
- document.location.hash = "step6";
- openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should receive one partitioned, third party cookie.", setUserInteractionAndContinue);
- break;
- case "#step6":
// Load localhost under 127.0.0.1 and check that it gets its non-partitioned cookie after user interaction.
openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=After user interaction, should receive one non-partitioned, first party cookie.", finishTest);
break;
@@ -86,14 +82,14 @@
testRunner.setStatisticsPrevalentResource(thirdPartyHostname, false);
testRunner.setStatisticsHasHadUserInteraction(thirdPartyOrigin, false);
+ testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, false);
+
testRunner.waitUntilDone();
testRunner.dumpChildFramesAsText();
document.location.hash = "step1";
+ }
- testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, false, runTest);
- } else {
- runTest();
- }
+ runTest();
</script>
</body>
</html>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -86,6 +86,7 @@
}
}
+
if (document.location.host === partitionHost && document.location.hash === "" && window.testRunner && window.internals) {
setEnableFeature(true);
@@ -92,19 +93,17 @@
testRunner.setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval(false);
testRunner.setStatisticsMinimumTimeBetweenDataRecordsRemoval(0);
- testRunner.waitUntilDone();
- testRunner.dumpChildFramesAsText();
- document.location.hash = "step1";
-
+ testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", true);
testRunner.setStatisticsPrevalentResource("http://localhost", true);
if (!testRunner.isStatisticsPrevalentResource("http://localhost"))
testFailed("Host did not get set as prevalent resource.");
- testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", true, runTest);
- } else {
- runTest();
+ testRunner.waitUntilDone();
+ testRunner.dumpChildFramesAsText();
+ document.location.hash = "step1";
}
+ runTest();
</script>
</body>
</html>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-with-partitioning-timeout.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-with-partitioning-timeout.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-with-partitioning-timeout.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -40,7 +40,8 @@
}
function fireShouldPartitionCookiesHandlerAndContinue() {
- testRunner.statisticsUpdateCookiePartitioning(runTest);
+ testRunner.statisticsUpdateCookiePartitioning();
+ runTest();
}
function setShortCookiePartitioningTimeOutPlusFireShouldPartitionCookiesHandlerAndContinue() {
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction-expected.txt (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction-expected.txt 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction-expected.txt 2018-02-01 00:08:01 UTC (rev 227942)
@@ -1,5 +1,5 @@
-
+
--------
Frame: '<!--framePath //<!--frame0-->-->'
--------
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -5,7 +5,7 @@
<title>Test for Partitioned Cookies With and Without User Interaction</title>
<script src=""
</head>
-<body>
+<body _onload_="runTest()">
<script>
const partitionHost = "127.0.0.1:8000";
const thirdPartyOrigin = "http://localhost:8000";
@@ -73,13 +73,11 @@
if (document.location.host === partitionHost && document.location.hash == "" && window.testRunner && window.internals) {
setEnableFeature(true);
+ testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", true);
+
testRunner.waitUntilDone();
testRunner.dumpChildFramesAsText();
document.location.hash = "step1";
-
- testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", true, runTest);
- } else {
- runTest();
}
</script>
</body>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt 2018-02-01 00:08:01 UTC (rev 227942)
@@ -6,8 +6,8 @@
PASS successfullyParsed is true
TEST COMPLETE
-
+
--------
Frame: '<!--framePath //<!--frame0-->-->'
--------
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<script src=""
</head>
-<body>
+<body _onload_="runTest()">
<script>
description("Tests that blocking is removed mid-flight in redirects.");
jsTestIsAsync = true;
@@ -16,6 +16,16 @@
testRunner.setCookieStoragePartitioningEnabled(enable);
}
+ if (document.location.hash === "") {
+ setEnableFeature(true);
+ if (testRunner.isStatisticsPrevalentResource("http://localhost"))
+ testFailed("Localhost was classified as prevalent resource before the test starts.");
+ // Make sure the network process is up-to-date.
+ testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false);
+ testRunner.dumpChildFramesAsText();
+ document.location.hash = "step1";
+ }
+
const partitionHost = "127.0.0.1:8000";
const thirdPartyOrigin = "http://localhost:8000";
const resourcePath = "/resourceLoadStatistics/resources";
@@ -58,11 +68,10 @@
// Set localhost as prevalent and with non-recent user interaction to put it in the blocking category.
document.location.hash = "step5";
testRunner.setStatisticsPrevalentResource("http://localhost", true);
+ testRunner.statisticsUpdateCookiePartitioning();
if (!testRunner.isStatisticsPrevalentResource("http://localhost"))
testFailed("Host did not get set as prevalent resource.");
- testRunner.statisticsUpdateCookiePartitioning(function() {
- runTest();
- });
+ runTest();
break;
case "#step5":
// Set partitioned cookie for localhost under 127.0.0.1.
@@ -85,18 +94,6 @@
break;
}
}
-
- if (document.location.hash === "") {
- setEnableFeature(true);
- if (testRunner.isStatisticsPrevalentResource("http://localhost"))
- testFailed("Localhost was classified as prevalent resource before the test starts.");
- testRunner.dumpChildFramesAsText();
- document.location.hash = "step1";
- // Make sure the network process is up-to-date.
- testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false, runTest);
- } else {
- runTest();
- }
</script>
</body>
</html>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-partitioning-in-redirect-expected.txt (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-partitioning-in-redirect-expected.txt 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-partitioning-in-redirect-expected.txt 2018-02-01 00:08:01 UTC (rev 227942)
@@ -6,8 +6,8 @@
PASS successfullyParsed is true
TEST COMPLETE
-
+
--------
Frame: '<!--framePath //<!--frame0-->-->'
--------
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-partitioning-in-redirect.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-partitioning-in-redirect.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/remove-partitioning-in-redirect.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<script src=""
</head>
-<body>
+<body _onload_="runTest()">
<script>
description("Tests that partitioning is removed mid-flight in redirects.");
jsTestIsAsync = true;
@@ -16,6 +16,16 @@
testRunner.setCookieStoragePartitioningEnabled(enable);
}
+ if (document.location.hash === "") {
+ setEnableFeature(true);
+ if (testRunner.isStatisticsPrevalentResource("http://localhost"))
+ testFailed("Localhost was classified as prevalent resource before the test starts.");
+ // Make sure the network process is up-to-date.
+ testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false);
+ testRunner.dumpChildFramesAsText();
+ document.location.hash = "step1";
+ }
+
const partitionHost = "127.0.0.1:8000";
const thirdPartyOrigin = "http://localhost:8000";
const resourcePath = "/resourceLoadStatistics/resources";
@@ -58,12 +68,11 @@
// Set localhost as prevalent and with non-recent user interaction to put it in the partitioning category.
document.location.hash = "step5";
testRunner.setStatisticsPrevalentResource("http://localhost", true);
+ testRunner.setStatisticsHasHadNonRecentUserInteraction("http://localhost");
+ testRunner.statisticsUpdateCookiePartitioning();
if (!testRunner.isStatisticsPrevalentResource("http://localhost"))
testFailed("Host did not get set as prevalent resource.");
- testRunner.setStatisticsHasHadNonRecentUserInteraction("http://localhost");
- testRunner.statisticsUpdateCookiePartitioning(function() {
- runTest();
- });
+ runTest();
break;
case "#step5":
// Set partitioned cookie for localhost under 127.0.0.1.
@@ -86,18 +95,6 @@
break;
}
}
-
- if (document.location.hash === "") {
- setEnableFeature(true);
- if (testRunner.isStatisticsPrevalentResource("http://localhost"))
- testFailed("Localhost was classified as prevalent resource before the test starts.");
- testRunner.dumpChildFramesAsText();
- document.location.hash = "step1";
- // Make sure the network process is up-to-date.
- testRunner.statisticsSetShouldPartitionCookiesForHost("localhost", false, runTest);
- } else {
- runTest();
- }
</script>
</body>
</html>
Modified: trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html (227941 => 227942)
--- trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html 2018-02-01 00:08:01 UTC (rev 227942)
@@ -69,18 +69,14 @@
case "#step4":
// Flag localhost for partitioning and set a partitioned cookie.
document.location.hash = "step5";
- testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, true, runTest);
+ testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, true);
+ openIframe(thirdPartyBaseUrl + subPathToSetPartitionedThirdPartyCookie + "&message=Setting partitioned, third party cookie.", runTest);
break;
case "#step5":
- // Flag localhost for partitioning and set a partitioned cookie.
document.location.hash = "step6";
- openIframe(thirdPartyBaseUrl + subPathToSetPartitionedThirdPartyCookie + "&message=Setting partitioned, third party cookie.", runTest);
+ openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should only receive partitioned, third party cookie.", setUserInteractionAndContinue);
break;
case "#step6":
- document.location.hash = "step7";
- openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=Should only receive partitioned, third party cookie.", setUserInteractionAndContinue);
- break;
- case "#step7":
openIframe(thirdPartyBaseUrl + subPathToGetCookies + "&message=After user interaction, should receive non-partitioned cookies set in a first-party context and in a third-party context.", finishTest);
break;
}
@@ -89,17 +85,17 @@
if (document.location.host === partitionHost && document.location.hash == "" && window.testRunner && window.internals) {
setEnableFeature(true);
+ // Start test with third party as non-prevalent
+ testRunner.setStatisticsPrevalentResource(thirdPartyHostname, false);
+ testRunner.setStatisticsHasHadUserInteraction(thirdPartyOrigin, false);
+ testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, false);
+
testRunner.waitUntilDone();
testRunner.dumpChildFramesAsText();
document.location.hash = "step1";
+ }
- // Start test with third party as non-prevalent
- testRunner.setStatisticsPrevalentResource(thirdPartyHostname, false);
- testRunner.setStatisticsHasHadUserInteraction(thirdPartyOrigin, false);
- testRunner.statisticsSetShouldPartitionCookiesForHost(thirdPartyHostname, false, runTest);
- } else {
- runTest();
- }
+ runTest();
</script>
</body>
</html>
Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (227941 => 227942)
--- trunk/LayoutTests/platform/mac-wk2/TestExpectations 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations 2018-02-01 00:08:01 UTC (rev 227942)
@@ -804,14 +804,14 @@
[ HighSierra+ ] http/tests/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html [ Pass ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html [ Pass Timeout ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context.html [ Pass ]
-[ HighSierra+ ] http/tests/resourceLoadStatistics/add-partitioning-to-redirect.html [ Pass ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/add-blocking-to-redirect.html [ Pass ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/remove-partitioning-in-redirect.html [ Pass ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/remove-blocking-in-redirect.html [ Pass ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store.html [ Pass ]
[ HighSierra+ ] http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour.html [ Pass ]
-[ HighSierra+ ] http/tests/resourceLoadStatistics/grandfathering.html [ Pass ]
+webkit.org/b/181958 [ HighSierra+ ] http/tests/resourceLoadStatistics/add-partitioning-to-redirect.html [ Pass Failure ]
+
# <rdar://problem/33555759>
webkit.org/b/177616 [ HighSierra+ ] http/tests/media/video-buffered-range-contains-currentTime.html [ Pass Timeout ]
@@ -875,6 +875,8 @@
webkit.org/b/181753 [ HighSierra Release ] http/wpt/service-workers/update-service-worker.https.html [ Pass Failure ]
+webkit.org/b/181831 [ HighSierra ] fast/forms/searchfield-heights.html [ Pass Failure ]
+
webkit.org/b/181957 [ Release ] http/tests/misc/resource-timing-resolution.html [ Pass Failure ]
webkit.org/b/181835 webrtc/captureCanvas-webrtc.html [ Pass Timeout ]
Modified: trunk/Source/WebKit/ChangeLog (227941 => 227942)
--- trunk/Source/WebKit/ChangeLog 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Source/WebKit/ChangeLog 2018-02-01 00:08:01 UTC (rev 227942)
@@ -1,3 +1,39 @@
+2018-01-31 Michael Catanzaro <mcatanz...@igalia.com>
+
+ Unreviewed, rolling out r227875.
+ https://bugs.webkit.org/show_bug.cgi?id=182357
+
+ Missing cross-platform TestController implementation
+
+ Reverted changeset:
+
+ "Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()"
+ https://bugs.webkit.org/show_bug.cgi?id=181958
+ https://trac.webkit.org/changeset/227875
+
+ * UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
+ (WKWebsiteDataStoreStatisticsUpdateCookiePartitioning):
+ (WKWebsiteDataStoreSetStatisticsShouldPartitionCookiesForHost):
+ * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
+ (-[WKWebsiteDataStore _resourceLoadStatisticsUpdateCookiePartitioning]):
+ (-[WKWebsiteDataStore _resourceLoadStatisticsSetShouldPartitionCookies:forHost:]):
+ (-[WKWebsiteDataStore _resourceLoadStatisticsUpdateCookiePartitioning:]): Deleted.
+ (-[WKWebsiteDataStore _resourceLoadStatisticsSetShouldPartitionCookies:forHost:completionHandler:]): Deleted.
+ * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
+ * UIProcess/WebResourceLoadStatisticsStore.cpp:
+ (WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated):
+ (WebKit::WebResourceLoadStatisticsStore::logUserInteraction):
+ (WebKit::WebResourceLoadStatisticsStore::logNonRecentUserInteraction):
+ (WebKit::WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdate):
+ (WebKit::WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdateForDomains):
+ (WebKit::WebResourceLoadStatisticsStore::scheduleClearPartitioningStateForDomains):
+ (WebKit::WebResourceLoadStatisticsStore::mergeWithDataFromDecoder):
+ (WebKit::WebResourceLoadStatisticsStore::clearInMemory):
+ (WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioning):
+ (WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioningForDomains):
+ (WebKit::WebResourceLoadStatisticsStore::clearPartitioningStateForDomains):
+ * UIProcess/WebResourceLoadStatisticsStore.h:
+
2018-01-31 Brent Fulgham <bfulg...@apple.com>
Follow-up to r227939.
Modified: trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp (227941 => 227942)
--- trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.cpp 2018-02-01 00:08:01 UTC (rev 227942)
@@ -244,7 +244,7 @@
if (!store)
return;
- store->scheduleCookiePartitioningUpdate([]() { });
+ store->scheduleCookiePartitioningUpdate();
}
void WKWebsiteDataStoreSetStatisticsShouldPartitionCookiesForHost(WKWebsiteDataStoreRef dataStoreRef, WKStringRef host, bool value)
@@ -254,9 +254,9 @@
return;
if (value)
- store->scheduleCookiePartitioningUpdateForDomains({ WebKit::toImpl(host)->string() }, { }, { }, WebKit::ShouldClearFirst::No, []() { });
+ store->scheduleCookiePartitioningUpdateForDomains({ WebKit::toImpl(host)->string() }, { }, { }, WebKit::ShouldClearFirst::No);
else
- store->scheduleClearPartitioningStateForDomains({ WebKit::toImpl(host)->string() }, []() { });
+ store->scheduleClearPartitioningStateForDomains({ WebKit::toImpl(host)->string() });
}
void WKWebsiteDataStoreStatisticsSubmitTelemetry(WKWebsiteDataStoreRef dataStoreRef)
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm (227941 => 227942)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm 2018-02-01 00:08:01 UTC (rev 227942)
@@ -497,43 +497,23 @@
- (void)_resourceLoadStatisticsUpdateCookiePartitioning
{
- [self _resourceLoadStatisticsUpdateCookiePartitioning:^() { }];
-}
-
-- (void)_resourceLoadStatisticsUpdateCookiePartitioning:(void (^)())completionHandler
-{
auto* store = _websiteDataStore->websiteDataStore().resourceLoadStatistics();
- if (!store) {
- completionHandler();
+ if (!store)
return;
- }
-
- store->scheduleCookiePartitioningUpdate([completionHandler = makeBlockPtr(completionHandler)]() {
- completionHandler();
- });
+
+ store->scheduleCookiePartitioningUpdate();
}
- (void)_resourceLoadStatisticsSetShouldPartitionCookies:(BOOL)value forHost:(NSString *)host
{
- [self _resourceLoadStatisticsSetShouldPartitionCookies:value forHost:host completionHandler:^() { }];
-}
-
-- (void)_resourceLoadStatisticsSetShouldPartitionCookies:(BOOL)value forHost:(NSString *)host completionHandler:(void (^)())completionHandler
-{
auto* store = _websiteDataStore->websiteDataStore().resourceLoadStatistics();
- if (!store) {
- completionHandler();
+ if (!store)
return;
- }
if (value)
- store->scheduleCookiePartitioningUpdateForDomains({ host }, { }, { }, WebKit::ShouldClearFirst::No, [completionHandler = makeBlockPtr(completionHandler)]() {
- completionHandler();
- });
+ store->scheduleCookiePartitioningUpdateForDomains({ host }, { }, { }, WebKit::ShouldClearFirst::No);
else
- store->scheduleClearPartitioningStateForDomains({ host }, [completionHandler = makeBlockPtr(completionHandler)]() {
- completionHandler();
- });
+ store->scheduleClearPartitioningStateForDomains({ host });
}
- (void)_resourceLoadStatisticsSubmitTelemetry
Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h (227941 => 227942)
--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h 2018-02-01 00:08:01 UTC (rev 227942)
@@ -73,10 +73,8 @@
- (void)_resourceLoadStatisticsSetMaxStatisticsEntries:(size_t)entries WK_API_AVAILABLE(macosx(10.13), ios(11.0));
- (void)_resourceLoadStatisticsSetPruneEntriesDownTo:(size_t)entries WK_API_AVAILABLE(macosx(10.13), ios(11.0));
- (void)_resourceLoadStatisticsProcessStatisticsAndDataRecords WK_API_AVAILABLE(macosx(10.13), ios(11.0));
-- (void)_resourceLoadStatisticsUpdateCookiePartitioning WK_API_DEPRECATED_WITH_REPLACEMENT("_resourceLoadStatisticsUpdateCookiePartitioning", macosx(10.13, WK_MAC_TBA), ios(11.0, WK_IOS_TBA));
-- (void)_resourceLoadStatisticsUpdateCookiePartitioning:(void (^)(void))completionHandler WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
-- (void)_resourceLoadStatisticsSetShouldPartitionCookies:(BOOL)value forHost:(NSString *)host WK_API_DEPRECATED_WITH_REPLACEMENT("_resourceLoadStatisticsSetShouldPartitionCookies", macosx(10.13, WK_MAC_TBA), ios(11.0, WK_IOS_TBA));
-- (void)_resourceLoadStatisticsSetShouldPartitionCookies:(BOOL)value forHost:(NSString *)host completionHandler:(void (^)(void))completionHandler WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA));
+- (void)_resourceLoadStatisticsUpdateCookiePartitioning WK_API_AVAILABLE(macosx(10.13), ios(11.0));
+- (void)_resourceLoadStatisticsSetShouldPartitionCookies:(BOOL)value forHost:(NSString *)host WK_API_AVAILABLE(macosx(10.13), ios(11.0));
- (void)_resourceLoadStatisticsSubmitTelemetry WK_API_AVAILABLE(macosx(10.13), ios(11.0));
- (void)_resourceLoadStatisticsSetNotifyPagesWhenDataRecordsWereScanned:(BOOL)value WK_API_AVAILABLE(macosx(10.13), ios(11.0));
- (void)_resourceLoadStatisticsSetShouldClassifyResourcesBeforeDataRecordsRemoval:(BOOL)value WK_API_AVAILABLE(macosx(10.13), ios(11.0));
Modified: trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp (227941 => 227942)
--- trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.cpp 2018-02-01 00:08:01 UTC (rev 227942)
@@ -254,7 +254,7 @@
mergeStatistics(WTFMove(origins));
// Fire before processing statistics to propagate user interaction as fast as possible to the network process.
- updateCookiePartitioning([]() { });
+ updateCookiePartitioning();
processStatisticsAndDataRecords();
}
@@ -386,7 +386,7 @@
statistics.mostRecentUserInteractionTime = WallTime::now();
if (statistics.isMarkedForCookiePartitioning || statistics.isMarkedForCookieBlocking)
- updateCookiePartitioningForDomains({ }, { }, { primaryDomain }, ShouldClearFirst::No, []() { });
+ updateCookiePartitioningForDomains({ }, { }, { primaryDomain }, ShouldClearFirst::No);
});
}
@@ -400,7 +400,7 @@
statistics.hadUserInteraction = true;
statistics.mostRecentUserInteractionTime = WallTime::now() - (m_parameters.timeToLiveCookiePartitionFree + Seconds::fromHours(1));
- updateCookiePartitioningForDomains({ primaryDomain }, { }, { }, ShouldClearFirst::No, []() { });
+ updateCookiePartitioningForDomains({ primaryDomain }, { }, { }, ShouldClearFirst::No);
});
}
@@ -563,31 +563,31 @@
});
}
-void WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdate(CompletionHandler<void()>&& callback)
+void WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdate()
{
// Helper function used by testing system. Should only be called from the main thread.
ASSERT(RunLoop::isMain());
- m_statisticsQueue->dispatch([this, protectedThis = makeRef(*this), callback = WTFMove(callback)] () mutable {
- updateCookiePartitioning(WTFMove(callback));
+ m_statisticsQueue->dispatch([this, protectedThis = makeRef(*this)] {
+ updateCookiePartitioning();
});
}
-void WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdateForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst shouldClearFirst, CompletionHandler<void()>&& callback)
+void WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdateForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst shouldClearFirst)
{
// Helper function used by testing system. Should only be called from the main thread.
ASSERT(RunLoop::isMain());
- m_statisticsQueue->dispatch([this, protectedThis = makeRef(*this), domainsToPartition = crossThreadCopy(domainsToPartition), domainsToBlock = crossThreadCopy(domainsToBlock), domainsToNeitherPartitionNorBlock = crossThreadCopy(domainsToNeitherPartitionNorBlock), shouldClearFirst, callback = WTFMove(callback)] () mutable {
- updateCookiePartitioningForDomains(domainsToPartition, domainsToBlock, domainsToNeitherPartitionNorBlock, shouldClearFirst, WTFMove(callback));
+ m_statisticsQueue->dispatch([this, protectedThis = makeRef(*this), domainsToPartition = crossThreadCopy(domainsToPartition), domainsToBlock = crossThreadCopy(domainsToBlock), domainsToNeitherPartitionNorBlock = crossThreadCopy(domainsToNeitherPartitionNorBlock), shouldClearFirst] {
+ updateCookiePartitioningForDomains(domainsToPartition, domainsToBlock, domainsToNeitherPartitionNorBlock, shouldClearFirst);
});
}
-void WebResourceLoadStatisticsStore::scheduleClearPartitioningStateForDomains(const Vector<String>& domains, CompletionHandler<void()>&& callback)
+void WebResourceLoadStatisticsStore::scheduleClearPartitioningStateForDomains(const Vector<String>& domains)
{
// Helper function used by testing system. Should only be called from the main thread.
ASSERT(RunLoop::isMain());
- m_statisticsQueue->dispatch([this, protectedThis = makeRef(*this), domains = crossThreadCopy(domains), callback = WTFMove(callback)] () mutable {
- clearPartitioningStateForDomains(domains, WTFMove(callback));
+ m_statisticsQueue->dispatch([this, protectedThis = makeRef(*this), domains = crossThreadCopy(domains)] {
+ clearPartitioningStateForDomains(domains);
});
}
@@ -732,7 +732,7 @@
return;
mergeStatistics(WTFMove(loadedStatistics));
- updateCookiePartitioning([]() { });
+ updateCookiePartitioning();
Vector<OperatingDate> operatingDates;
succeeded = decoder.decodeObjects("operatingDates", operatingDates, [](KeyedDecoder& decoder, OperatingDate& date) {
@@ -756,7 +756,7 @@
m_resourceStatisticsMap.clear();
m_operatingDates.clear();
- updateCookiePartitioningForDomains({ }, { }, { }, ShouldClearFirst::Yes, []() { });
+ updateCookiePartitioningForDomains({ }, { }, { }, ShouldClearFirst::Yes);
}
bool WebResourceLoadStatisticsStore::wasAccessedAsFirstPartyDueToUserInteraction(const ResourceLoadStatistics& current, const ResourceLoadStatistics& updated)
@@ -794,7 +794,7 @@
return statistic.isPrevalentResource && !statistic.hadUserInteraction;
}
-void WebResourceLoadStatisticsStore::updateCookiePartitioning(CompletionHandler<void()>&& callback)
+void WebResourceLoadStatisticsStore::updateCookiePartitioning()
{
ASSERT(!RunLoop::isMain());
@@ -819,25 +819,20 @@
}
}
- if (domainsToPartition.isEmpty() && domainsToBlock.isEmpty() && domainsToNeitherPartitionNorBlock.isEmpty()) {
- callback();
+ if (domainsToPartition.isEmpty() && domainsToBlock.isEmpty() && domainsToNeitherPartitionNorBlock.isEmpty())
return;
- }
- RunLoop::main().dispatch([this, protectedThis = makeRef(*this), domainsToPartition = crossThreadCopy(domainsToPartition), domainsToBlock = crossThreadCopy(domainsToBlock), domainsToNeitherPartitionNorBlock = crossThreadCopy(domainsToNeitherPartitionNorBlock), callback = WTFMove(callback)] () {
+ RunLoop::main().dispatch([this, protectedThis = makeRef(*this), domainsToPartition = crossThreadCopy(domainsToPartition), domainsToBlock = crossThreadCopy(domainsToBlock), domainsToNeitherPartitionNorBlock = crossThreadCopy(domainsToNeitherPartitionNorBlock)] () {
m_updatePrevalentDomainsToPartitionOrBlockCookiesHandler(domainsToPartition, domainsToBlock, domainsToNeitherPartitionNorBlock, ShouldClearFirst::No);
- callback();
});
}
-void WebResourceLoadStatisticsStore::updateCookiePartitioningForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst shouldClearFirst, CompletionHandler<void()>&& callback)
+void WebResourceLoadStatisticsStore::updateCookiePartitioningForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst shouldClearFirst)
{
ASSERT(!RunLoop::isMain());
- if (domainsToPartition.isEmpty() && domainsToBlock.isEmpty() && domainsToNeitherPartitionNorBlock.isEmpty() && shouldClearFirst == ShouldClearFirst::No) {
- callback();
+ if (domainsToPartition.isEmpty() && domainsToBlock.isEmpty() && domainsToNeitherPartitionNorBlock.isEmpty() && shouldClearFirst == ShouldClearFirst::No)
return;
- }
-
+
RunLoop::main().dispatch([this, shouldClearFirst, protectedThis = makeRef(*this), domainsToPartition = crossThreadCopy(domainsToPartition), domainsToBlock = crossThreadCopy(domainsToBlock), domainsToNeitherPartitionNorBlock = crossThreadCopy(domainsToNeitherPartitionNorBlock)] () {
m_updatePrevalentDomainsToPartitionOrBlockCookiesHandler(domainsToPartition, domainsToBlock, domainsToNeitherPartitionNorBlock, shouldClearFirst);
});
@@ -857,17 +852,13 @@
for (auto& domain : domainsToBlock)
ensureResourceStatisticsForPrimaryDomain(domain).isMarkedForCookieBlocking = true;
-
- callback();
}
-void WebResourceLoadStatisticsStore::clearPartitioningStateForDomains(const Vector<String>& domains, CompletionHandler<void()>&& callback)
+void WebResourceLoadStatisticsStore::clearPartitioningStateForDomains(const Vector<String>& domains)
{
ASSERT(!RunLoop::isMain());
- if (domains.isEmpty()) {
- callback();
+ if (domains.isEmpty())
return;
- }
RunLoop::main().dispatch([this, protectedThis = makeRef(*this), domains = crossThreadCopy(domains)] () {
m_removeDomainsHandler(domains);
@@ -878,8 +869,6 @@
statistic.isMarkedForCookiePartitioning = false;
statistic.isMarkedForCookieBlocking = false;
}
-
- callback();
}
void WebResourceLoadStatisticsStore::resetCookiePartitioningState()
Modified: trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h (227941 => 227942)
--- trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Source/WebKit/UIProcess/WebResourceLoadStatisticsStore.h 2018-02-01 00:08:01 UTC (rev 227942)
@@ -106,9 +106,9 @@
void setSubframeUnderTopFrameOrigin(const WebCore::URL& subframe, const WebCore::URL& topFrame);
void setSubresourceUnderTopFrameOrigin(const WebCore::URL& subresource, const WebCore::URL& topFrame);
void setSubresourceUniqueRedirectTo(const WebCore::URL& subresource, const WebCore::URL& hostNameRedirectedTo);
- void scheduleCookiePartitioningUpdate(CompletionHandler<void()>&&);
- void scheduleCookiePartitioningUpdateForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst, CompletionHandler<void()>&&);
- void scheduleClearPartitioningStateForDomains(const Vector<String>& domains, CompletionHandler<void()>&&);
+ void scheduleCookiePartitioningUpdate();
+ void scheduleCookiePartitioningUpdateForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst);
+ void scheduleClearPartitioningStateForDomains(const Vector<String>& domains);
void scheduleStatisticsAndDataRecordsProcessing();
void submitTelemetry();
void scheduleCookiePartitioningStateReset();
@@ -162,9 +162,9 @@
bool hasHadUnexpiredRecentUserInteraction(WebCore::ResourceLoadStatistics&) const;
void includeTodayAsOperatingDateIfNecessary();
Vector<String> topPrivatelyControlledDomainsToRemoveWebsiteDataFor();
- void updateCookiePartitioning(CompletionHandler<void()>&&);
- void updateCookiePartitioningForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst, CompletionHandler<void()>&&);
- void clearPartitioningStateForDomains(const Vector<String>& domains, CompletionHandler<void()>&&);
+ void updateCookiePartitioning();
+ void updateCookiePartitioningForDomains(const Vector<String>& domainsToPartition, const Vector<String>& domainsToBlock, const Vector<String>& domainsToNeitherPartitionNorBlock, ShouldClearFirst);
+ void clearPartitioningStateForDomains(const Vector<String>& domains);
void mergeStatistics(Vector<WebCore::ResourceLoadStatistics>&&);
WebCore::ResourceLoadStatistics& ensureResourceStatisticsForPrimaryDomain(const String&);
void processStatisticsAndDataRecords();
Modified: trunk/Tools/ChangeLog (227941 => 227942)
--- trunk/Tools/ChangeLog 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/ChangeLog 2018-02-01 00:08:01 UTC (rev 227942)
@@ -1,5 +1,33 @@
2018-01-31 Michael Catanzaro <mcatanz...@igalia.com>
+ Unreviewed, rolling out r227875.
+ https://bugs.webkit.org/show_bug.cgi?id=182357
+
+ Missing cross-platform TestController implementation
+
+ Reverted changeset:
+
+ "Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()"
+ https://bugs.webkit.org/show_bug.cgi?id=181958
+ https://trac.webkit.org/changeset/227875
+
+ * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
+ * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
+ (WTR::InjectedBundle::didReceiveMessageToPage):
+ * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
+ (WTR::TestRunner::statisticsUpdateCookiePartitioning):
+ (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost):
+ (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
+ * WebKitTestRunner/InjectedBundle/TestRunner.h:
+ * WebKitTestRunner/TestInvocation.cpp:
+ (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
+ * WebKitTestRunner/TestInvocation.h:
+ * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
+ (WTR::TestController::statisticsUpdateCookiePartitioning):
+ (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
+
+2018-01-31 Michael Catanzaro <mcatanz...@igalia.com>
+
REGRESSION(r227223): http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour.html, http/tests/resourceLoadStatistics/grandfathering.html timing out on GTK, WPE
https://bugs.webkit.org/show_bug.cgi?id=182222
Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl 2018-02-01 00:08:01 UTC (rev 227942)
@@ -283,8 +283,8 @@
void setStatisticsTimeToLiveCookiePartitionFree(double seconds);
void statisticsNotifyObserver();
void statisticsProcessStatisticsAndDataRecords();
- void statisticsUpdateCookiePartitioning(object callback);
- void statisticsSetShouldPartitionCookiesForHost(DOMString hostName, boolean value, object callback);
+ void statisticsUpdateCookiePartitioning();
+ void statisticsSetShouldPartitionCookiesForHost(DOMString hostName, boolean value);
void statisticsSubmitTelemetry();
void setStatisticsNotifyPagesWhenDataRecordsWereScanned(boolean value);
void setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval(boolean value);
Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp 2018-02-01 00:08:01 UTC (rev 227942)
@@ -245,11 +245,6 @@
return;
}
- if (WKStringIsEqualToUTF8CString(messageName, "CallDidSetPartitionOrBlockCookiesForHost")) {
- m_testRunner->statisticsCallDidSetPartitionOrBlockCookiesForHostCallback();
- return;
- }
-
if (WKStringIsEqualToUTF8CString(messageName, "CallDidRemoveAllSessionCredentialsCallback")) {
m_testRunner->callDidRemoveAllSessionCredentialsCallback();
return;
Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp 2018-02-01 00:08:01 UTC (rev 227942)
@@ -651,7 +651,6 @@
StatisticsDidScanDataRecordsCallbackID,
StatisticsDidRunTelemetryCallbackID,
StatisticsDidClearThroughWebsiteDataRemovalCallbackID,
- StatisticsDidSetPartitionOrBlockCookiesForHostCallbackID,
DidRemoveAllSessionCredentialsCallbackID,
GetApplicationManifestCallbackID,
FirstUIScriptCallbackID = 100
@@ -1554,18 +1553,14 @@
WKBundlePostSynchronousMessage(InjectedBundle::singleton().bundle(), messageName.get(), 0, nullptr);
}
-void TestRunner::statisticsUpdateCookiePartitioning(JSValueRef callback)
+void TestRunner::statisticsUpdateCookiePartitioning()
{
- cacheTestRunnerCallback(StatisticsDidSetPartitionOrBlockCookiesForHostCallbackID, callback);
-
WKRetainPtr<WKStringRef> messageName(AdoptWK, WKStringCreateWithUTF8CString("StatisticsUpdateCookiePartitioning"));
WKBundlePostSynchronousMessage(InjectedBundle::singleton().bundle(), messageName.get(), 0, nullptr);
}
-void TestRunner::statisticsSetShouldPartitionCookiesForHost(JSStringRef hostName, bool value, JSValueRef callback)
+void TestRunner::statisticsSetShouldPartitionCookiesForHost(JSStringRef hostName, bool value)
{
- cacheTestRunnerCallback(StatisticsDidSetPartitionOrBlockCookiesForHostCallbackID, callback);
-
Vector<WKRetainPtr<WKStringRef>> keys;
Vector<WKRetainPtr<WKTypeRef>> values;
@@ -1589,11 +1584,6 @@
WKBundlePostSynchronousMessage(InjectedBundle::singleton().bundle(), messageName.get(), messageBody.get(), nullptr);
}
-void TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback()
-{
- callTestRunnerCallback(StatisticsDidSetPartitionOrBlockCookiesForHostCallbackID);
-}
-
void TestRunner::statisticsSubmitTelemetry()
{
WKRetainPtr<WKStringRef> messageName(AdoptWK, WKStringCreateWithUTF8CString("StatisticsSubmitTelemetry"));
Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h 2018-02-01 00:08:01 UTC (rev 227942)
@@ -367,9 +367,8 @@
void statisticsDidRunTelemetryCallback(unsigned totalPrevalentResources, unsigned totalPrevalentResourcesWithUserInteraction, unsigned top3SubframeUnderTopFrameOrigins);
void statisticsNotifyObserver();
void statisticsProcessStatisticsAndDataRecords();
- void statisticsUpdateCookiePartitioning(JSValueRef callback);
- void statisticsSetShouldPartitionCookiesForHost(JSStringRef hostName, bool value, JSValueRef callback);
- void statisticsCallDidSetPartitionOrBlockCookiesForHostCallback();
+ void statisticsUpdateCookiePartitioning();
+ void statisticsSetShouldPartitionCookiesForHost(JSStringRef hostName, bool value);
void statisticsSubmitTelemetry();
void setStatisticsLastSeen(JSStringRef hostName, double seconds);
void setStatisticsPrevalentResource(JSStringRef hostName, bool value);
Modified: trunk/Tools/WebKitTestRunner/TestInvocation.cpp (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/TestInvocation.cpp 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/TestInvocation.cpp 2018-02-01 00:08:01 UTC (rev 227942)
@@ -1345,12 +1345,6 @@
WKPagePostMessageToInjectedBundle(TestController::singleton().mainWebView()->page(), messageName.get(), 0);
}
-void TestInvocation::didSetPartitionOrBlockCookiesForHost()
-{
- WKRetainPtr<WKStringRef> messageName = adoptWK(WKStringCreateWithUTF8CString("CallDidSetPartitionOrBlockCookiesForHost"));
- WKPagePostMessageToInjectedBundle(TestController::singleton().mainWebView()->page(), messageName.get(), 0);
-}
-
void TestInvocation::didRemoveAllSessionCredentials()
{
WKRetainPtr<WKStringRef> messageName = adoptWK(WKStringCreateWithUTF8CString("CallDidRemoveAllSessionCredentialsCallback"));
Modified: trunk/Tools/WebKitTestRunner/TestInvocation.h (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/TestInvocation.h 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/TestInvocation.h 2018-02-01 00:08:01 UTC (rev 227942)
@@ -72,7 +72,6 @@
void notifyDownloadDone();
void didClearStatisticsThroughWebsiteDataRemoval();
- void didSetPartitionOrBlockCookiesForHost();
void didRemoveAllSessionCredentials();
Modified: trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm (227941 => 227942)
--- trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm 2018-02-01 00:03:05 UTC (rev 227941)
+++ trunk/Tools/WebKitTestRunner/cocoa/TestControllerCocoa.mm 2018-02-01 00:08:01 UTC (rev 227942)
@@ -376,16 +376,12 @@
void TestController::statisticsUpdateCookiePartitioning()
{
- [globalWebViewConfiguration.websiteDataStore _resourceLoadStatisticsUpdateCookiePartitioning:^() {
- m_currentInvocation->didSetPartitionOrBlockCookiesForHost();
- }];
+ [globalWebViewConfiguration.websiteDataStore _resourceLoadStatisticsUpdateCookiePartitioning];
}
void TestController::statisticsSetShouldPartitionCookiesForHost(WKStringRef hostName, bool value)
{
- [globalWebViewConfiguration.websiteDataStore _resourceLoadStatisticsSetShouldPartitionCookies:value forHost:toNSString(hostName) completionHandler:^() {
- m_currentInvocation->didSetPartitionOrBlockCookiesForHost();
- }];
+ [globalWebViewConfiguration.websiteDataStore _resourceLoadStatisticsSetShouldPartitionCookies:value forHost:toNSString(hostName)];
}
void TestController::statisticsSubmitTelemetry()