| Index: third_party/WebKit/LayoutTests/imported/wpt/clear-site-data/support/echo-clear-site-data.py
|
| diff --git a/third_party/WebKit/LayoutTests/imported/wpt/clear-site-data/support/echo-clear-site-data.py b/third_party/WebKit/LayoutTests/imported/wpt/clear-site-data/support/echo-clear-site-data.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e8ec8d55327c28339c7466fcf613ff784359f2e1
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/imported/wpt/clear-site-data/support/echo-clear-site-data.py
|
| @@ -0,0 +1,40 @@
|
| +import json
|
| +
|
| +RESPONSE = """
|
| +<!DOCTYPE html>
|
| +<html>
|
| + <head>
|
| + <title>Clear-Site-Data</title>
|
| + <script src="test_utils.js"></script>
|
| + </head>
|
| + <body>
|
| + <script>
|
| + /**
|
| + * A map between a datatype name and whether it is empty.
|
| + * @property Object.<string, boolean>
|
| + */
|
| + var report = {};
|
| +
|
| + Promise.all(TestUtils.DATATYPES.map(function(datatype) {
|
| + return datatype.isEmpty().then(function(isEmpty) {
|
| + report[datatype.name] = isEmpty;
|
| + });
|
| + })).then(function() {
|
| + window.top.postMessage(report, "*");
|
| + });
|
| + </script>
|
| + </body>
|
| +</html>
|
| +"""
|
| +
|
| +# A support server that receives a list of datatypes in the GET query
|
| +# and returns a Clear-Site-Data header with those datatypes. The content
|
| +# of the response is a html site using postMessage to report the status
|
| +# of the datatypes, so that if used in an iframe, it can inform the
|
| +# embedder whether the data deletion succeeded.
|
| +def main(request, response):
|
| + types = [key for key in request.GET.keys()]
|
| + header = json.dumps({ "types": types })
|
| + return ([("Clear-Site-Data", header),
|
| + ("Content-Type", "text/html")],
|
| + RESPONSE)
|
|
|