| OLD | NEW |
| 1 if (self.importScripts) { | 1 if (self.importScripts) { |
| 2 importScripts('/resources/testharness.js'); | 2 importScripts('/resources/testharness.js'); |
| 3 importScripts('../resources/test-helpers.js'); | 3 importScripts('../resources/test-helpers.js'); |
| 4 } | 4 } |
| 5 | 5 |
| 6 cache_test(cache => { | 6 cache_test(cache => { |
| 7 return cache.keys() | 7 return cache.keys() |
| 8 .then(requests => { | 8 .then(requests => { |
| 9 assert_equals( | 9 assert_equals( |
| 10 requests.length, 0, | 10 requests.length, 0, |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 43 .then(function(result) { | 43 .then(function(result) { |
| 44 assert_request_array_equals( | 44 assert_request_array_equals( |
| 45 result, [entries.a.request], | 45 result, [entries.a.request], |
| 46 'Cache.keys should match by Request.'); | 46 'Cache.keys should match by Request.'); |
| 47 }); | 47 }); |
| 48 }, 'Cache.keys with new Request'); | 48 }, 'Cache.keys with new Request'); |
| 49 | 49 |
| 50 prepopulated_cache_test(simple_entries, function(cache, entries) { | 50 prepopulated_cache_test(simple_entries, function(cache, entries) { |
| 51 return cache.keys(entries.a.request, {ignoreSearch: true}) | 51 return cache.keys(entries.a.request, {ignoreSearch: true}) |
| 52 .then(function(result) { | 52 .then(function(result) { |
| 53 // TODO(zino): Should use assert_request_array_equals() instead of | 53 assert_request_array_equals( |
| 54 // assert_request_array_equivalent() once keys() returns request | |
| 55 // keys in key insertion order. Please see http://crbug.com/627821. | |
| 56 assert_request_array_equivalent( | |
| 57 result, | 54 result, |
| 58 [ | 55 [ |
| 59 entries.a.request, | 56 entries.a.request, |
| 60 entries.a_with_query.request | 57 entries.a_with_query.request |
| 61 ], | 58 ], |
| 62 'Cache.keys with ignoreSearch should ignore the ' + | 59 'Cache.keys with ignoreSearch should ignore the ' + |
| 63 'search parameters of cached request.'); | 60 'search parameters of cached request.'); |
| 64 }); | 61 }); |
| 65 }, | 62 }, |
| 66 'Cache.keys with ignoreSearch option (request with no search ' + | 63 'Cache.keys with ignoreSearch option (request with no search ' + |
| 67 'parameters)'); | 64 'parameters)'); |
| 68 | 65 |
| 69 prepopulated_cache_test(simple_entries, function(cache, entries) { | 66 prepopulated_cache_test(simple_entries, function(cache, entries) { |
| 70 return cache.keys(entries.a_with_query.request, {ignoreSearch: true}) | 67 return cache.keys(entries.a_with_query.request, {ignoreSearch: true}) |
| 71 .then(function(result) { | 68 .then(function(result) { |
| 72 // TODO(zino): Should use assert_request_array_equals() instead of | 69 assert_request_array_equals( |
| 73 // assert_request_array_equivalent() if once keys() returns request | |
| 74 // keys in key insertion order. Please see http://crbug.com/627821. | |
| 75 assert_request_array_equivalent( | |
| 76 result, | 70 result, |
| 77 [ | 71 [ |
| 78 entries.a.request, | 72 entries.a.request, |
| 79 entries.a_with_query.request | 73 entries.a_with_query.request |
| 80 ], | 74 ], |
| 81 'Cache.keys with ignoreSearch should ignore the ' + | 75 'Cache.keys with ignoreSearch should ignore the ' + |
| 82 'search parameters of request.'); | 76 'search parameters of request.'); |
| 83 }); | 77 }); |
| 84 }, | 78 }, |
| 85 'Cache.keys with ignoreSearch option (request with search parameters)'); | 79 'Cache.keys with ignoreSearch option (request with search parameters)'); |
| 86 | 80 |
| 87 cache_test(function(cache) { | 81 cache_test(function(cache) { |
| 88 var request = new Request('http://example.com/'); | 82 var request = new Request('http://example.com/'); |
| 89 var head_request = new Request('http://example.com/', {method: 'HEAD'}); | 83 var head_request = new Request('http://example.com/', {method: 'HEAD'}); |
| 90 var response = new Response('foo'); | 84 var response = new Response('foo'); |
| 91 return cache.put(request.clone(), response.clone()) | 85 return cache.put(request.clone(), response.clone()) |
| 92 .then(function() { | 86 .then(function() { |
| 93 return cache.keys(head_request.clone()); | 87 return cache.keys(head_request.clone()); |
| 94 }) | 88 }) |
| 95 .then(function(result) { | 89 .then(function(result) { |
| 96 assert_request_array_equals( | 90 assert_request_array_equals( |
| 97 result, [], | 91 result, [], |
| 98 'Cache.keys should resolve with an empty array with a ' + | 92 'Cache.keys should resolve with an empty array with a ' + |
| 99 'mismatched method.'); | 93 'mismatched method.'); |
| 100 return cache.keys(head_request.clone(), | 94 return cache.keys(head_request.clone(), |
| 101 {ignoreMethod: true}); | 95 {ignoreMethod: true}); |
| 102 }) | 96 }) |
| 103 .then(function(result) { | 97 .then(function(result) { |
| 104 assert_request_array_equivalent( | 98 assert_request_array_equals( |
| 105 result, | 99 result, |
| 106 [ | 100 [ |
| 107 request, | 101 request, |
| 108 ], | 102 ], |
| 109 'Cache.keys with ignoreMethod should ignore the ' + | 103 'Cache.keys with ignoreMethod should ignore the ' + |
| 110 'method of request.'); | 104 'method of request.'); |
| 111 }); | 105 }); |
| 112 }, 'Cache.keys supports ignoreMethod'); | 106 }, 'Cache.keys supports ignoreMethod'); |
| 113 | 107 |
| 114 cache_test(function(cache) { | 108 cache_test(function(cache) { |
| 115 var vary_request = new Request('http://example.com/c', | 109 var vary_request = new Request('http://example.com/c', |
| 116 {headers: {'Cookies': 'is-for-cookie'}}); | 110 {headers: {'Cookies': 'is-for-cookie'}}); |
| 117 var vary_response = new Response('', {headers: {'Vary': 'Cookies'}}); | 111 var vary_response = new Response('', {headers: {'Vary': 'Cookies'}}); |
| 118 var mismatched_vary_request = new Request('http://example.com/c'); | 112 var mismatched_vary_request = new Request('http://example.com/c'); |
| 119 | 113 |
| 120 return cache.put(vary_request.clone(), vary_response.clone()) | 114 return cache.put(vary_request.clone(), vary_response.clone()) |
| 121 .then(function() { | 115 .then(function() { |
| 122 return cache.keys(mismatched_vary_request.clone()); | 116 return cache.keys(mismatched_vary_request.clone()); |
| 123 }) | 117 }) |
| 124 .then(function(result) { | 118 .then(function(result) { |
| 125 assert_request_array_equals( | 119 assert_request_array_equals( |
| 126 result, [], | 120 result, [], |
| 127 'Cache.keys should resolve with an empty array with a ' + | 121 'Cache.keys should resolve with an empty array with a ' + |
| 128 'mismatched vary.'); | 122 'mismatched vary.'); |
| 129 return cache.keys(mismatched_vary_request.clone(), | 123 return cache.keys(mismatched_vary_request.clone(), |
| 130 {ignoreVary: true}); | 124 {ignoreVary: true}); |
| 131 }) | 125 }) |
| 132 .then(function(result) { | 126 .then(function(result) { |
| 133 assert_request_array_equivalent( | 127 assert_request_array_equals( |
| 134 result, | 128 result, |
| 135 [ | 129 [ |
| 136 vary_request, | 130 vary_request, |
| 137 ], | 131 ], |
| 138 'Cache.keys with ignoreVary should ignore the ' + | 132 'Cache.keys with ignoreVary should ignore the ' + |
| 139 'vary of request.'); | 133 'vary of request.'); |
| 140 }); | 134 }); |
| 141 }, 'Cache.keys supports ignoreVary'); | 135 }, 'Cache.keys supports ignoreVary'); |
| 142 | 136 |
| 143 prepopulated_cache_test(simple_entries, function(cache, entries) { | 137 prepopulated_cache_test(simple_entries, function(cache, entries) { |
| (...skipping 14 matching lines...) Expand all Loading... |
| 158 assert_request_array_equals( | 152 assert_request_array_equals( |
| 159 result, [], | 153 result, [], |
| 160 'Cache.keys should treat query as a URL and not ' + | 154 'Cache.keys should treat query as a URL and not ' + |
| 161 'just a string fragment.'); | 155 'just a string fragment.'); |
| 162 }); | 156 }); |
| 163 }, 'Cache.keys with string fragment "http" as query'); | 157 }, 'Cache.keys with string fragment "http" as query'); |
| 164 | 158 |
| 165 prepopulated_cache_test(simple_entries, function(cache, entries) { | 159 prepopulated_cache_test(simple_entries, function(cache, entries) { |
| 166 return cache.keys() | 160 return cache.keys() |
| 167 .then(function(result) { | 161 .then(function(result) { |
| 168 // TODO(zino): Should use assert_request_array_equals() instead of | 162 assert_request_array_equals( |
| 169 // assert_request_array_equivalent() once keys() returns request | |
| 170 // keys in key insertion order. Please see http://crbug.com/627821. | |
| 171 assert_request_array_equivalent( | |
| 172 result, | 163 result, |
| 173 [ | 164 [ |
| 174 entries.a.request, | 165 entries.a.request, |
| 175 entries.b.request, | 166 entries.b.request, |
| 176 entries.a_with_query.request, | 167 entries.a_with_query.request, |
| 177 entries.A.request, | 168 entries.A.request, |
| 178 entries.a_https.request, | 169 entries.a_https.request, |
| 179 entries.a_org.request, | 170 entries.a_org.request, |
| 180 entries.cat.request, | 171 entries.cat.request, |
| 181 entries.catmandu.request, | 172 entries.catmandu.request, |
| (...skipping 10 matching lines...) Expand all Loading... |
| 192 return cache.keys(new Request(entries.cat.request.url, {method: 'HEAD'})) | 183 return cache.keys(new Request(entries.cat.request.url, {method: 'HEAD'})) |
| 193 .then(function(result) { | 184 .then(function(result) { |
| 194 assert_request_array_equals( | 185 assert_request_array_equals( |
| 195 result, [], | 186 result, [], |
| 196 'Cache.keys should not match HEAD request unless ignoreMethod ' + | 187 'Cache.keys should not match HEAD request unless ignoreMethod ' + |
| 197 'option is set.'); | 188 'option is set.'); |
| 198 }); | 189 }); |
| 199 }, 'Cache.keys with a HEAD Request'); | 190 }, 'Cache.keys with a HEAD Request'); |
| 200 | 191 |
| 201 done(); | 192 done(); |
| OLD | NEW |