| Index: third_party/WebKit/LayoutTests/imported/wpt/service-workers/cache-storage/serviceworker/credentials.html
|
| diff --git a/third_party/WebKit/LayoutTests/imported/wpt/service-workers/cache-storage/serviceworker/credentials.html b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/cache-storage/serviceworker/credentials.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..7bc494eb140a644dfb6072b3906bbcf390c441cc
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/cache-storage/serviceworker/credentials.html
|
| @@ -0,0 +1,46 @@
|
| +<!DOCTYPE html>
|
| +<meta charset=utf-8>
|
| +<title>Cache Storage: Verify credentials are respected by Cache operations</title>
|
| +<link rel="help" href="https://w3c.github.io/ServiceWorker/#cache-storage">
|
| +<script src="/resources/testharness.js"></script>
|
| +<script src="/resources/testharnessreport.js"></script>
|
| +<script src="../../service-worker/resources/test-helpers.sub.js"></script>
|
| +<style>iframe { display: none; }</style>
|
| +<script>
|
| +
|
| +var worker = "../resources/credentials-worker.js";
|
| +var scope = "../resources/credentials-iframe.html";
|
| +promise_test(function(t) {
|
| + return self.caches.delete('credentials')
|
| + .then(function() {
|
| + return service_worker_unregister_and_register(t, worker, scope)
|
| + })
|
| + .then(function(reg) {
|
| + return wait_for_state(t, reg.installing, 'activated');
|
| + })
|
| + .then(function() {
|
| + return with_iframe(scope);
|
| + })
|
| + .then(function(frame) {
|
| + frame.contentWindow.postMessage([
|
| + {name: 'file.txt', username: 'aa', password: 'bb'},
|
| + {name: 'file.txt', username: 'cc', password: 'dd'},
|
| + {name: 'file.txt'}
|
| + ], '*');
|
| + return new Promise(function(resolve, reject) {
|
| + window.onmessage = t.step_func(function(e) {
|
| + resolve(e.data);
|
| + });
|
| + });
|
| + })
|
| + .then(function(data) {
|
| + assert_equals(data.length, 3, 'three entries should be present');
|
| + assert_equals(data.filter(function(url) { return /@/.test(url); }).length, 2,
|
| + 'two entries should contain credentials');
|
| + assert_true(data.some(function(url) { return /aa:bb@/.test(url); }),
|
| + 'entry with credentials aa:bb should be present');
|
| + assert_true(data.some(function(url) { return /cc:dd@/.test(url); }),
|
| + 'entry with credentials cc:dd should be present');
|
| + });
|
| +}, "Cache API matching includes credentials");
|
| +</script>
|
|
|