Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(751)

Side by Side Diff: LayoutTests/http/tests/serviceworker/resources/cache-put-worker.js

Issue 425413002: [ServiceWorker] Tests for Cache (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 importScripts('worker-test-harness.js');
2
3 var test_request = new Request('http://example.com/foo', {method: 'GET'});
4
5 var test_response = new Response('Hello, world!', {
6 status: 200,
7 statusText: 'OK',
8 headers: [['Content-Type', 'text/plain']]
9 });
10
11 var alternate_test_response = new Response('Goodbye, world!', {
12 status: 200,
13 statusText: 'OK',
14 headers: [['Content-Type', 'text/plain']]
15 });
16
17 promise_test(function(t) {
18 return create_temporary_cache(t)
19 .then(function(cache) {
20 return cache.put(test_request, test_response);
21 })
22 .then(function(result) {
23 assert_equals(result,
jkarlin 2014/10/03 15:10:52 assert_equals does a === comparison which will fai
asanka 2014/10/15 23:43:49 Should be okay now.
24 test_response,
25 'Cache.put should resolve with the response ' +
26 'parameter.');
27 })
28 .then(function() {
29 return cache.get(test_request);
30 })
31 .then(function(result) {
32 assert_equals(result, test_response,
33 'Cache.put should update the cache with specified ' +
34 'request.');
35 });
36 }, 'Cache.put with a valid request');
37
38 promise_test(function(t) {
39 return create_temporary_cache(t)
40 .then(function(cache) {
41 return cache.put(test_request, test_response)
42 .then(function() {
43 return cache.put(test_request, alternate_test_response);
44 });
45 })
46 .then(function(result) {
47 assert_equals(result,
48 alternate_test_response,
49 'Cache.put should replace existing response with ' +
50 'new response.');
51 })
52 .then(function() {
53 return cache.get(test_request);
54 })
55 .then(function(result) {
56 assert_equals(result, alternate_test_response,
57 'Cache.put should replace existing response with new ' +
58 'response.');
59 });
60 }, 'Cache.put with an existing request');
61
62 promise_test(function(t) {
63 return create_temporary_cache(t)
64 .then(function(cache) {
65 return cache.put('http://example.com/cow-goes-moo', test_response);
66 })
67 .then(function(result) {
68 assert_equals(result, test_response,
69 'Cache.put should accept a ScalarValueString as the ' +
70 'request.');
71 });
72 }, 'Cache.put with a request string');
73
74 promise_test(function(t) {
75 return create_temporary_cache(t)
76 .then(function(cache) {
77 return cache.put('invalid-scheme://should-accept', test_response);
78 })
79 .then(function(result) {
80 assert_equals(result, test_response,
81 'Cache.put should accept a ScalarValueString as the ' +
82 'request.');
83 });
84 }, 'Cache.put with a request string');
85
86 promise_test(function(t) {
87 return create_temporary_cache(t)
88 .then(function(cache) {
89 return cache.put('relative-url', test_response);
90 })
91 .then(function(result) {
92 assert_equals(result, test_response,
93 'Cache.put should accept a relative URL as the ' +
94 'request.');
95 })
96 .then(function() {
97 return cache.get(new URL('relative-url', location.href).href);
98 })
99 .then(function(result) {
100 assert_equals(result, test_response,
101 'Cache.put should accept a relative URL as the ' +
102 'request.');
103 });
104 }, 'Cache.put with a relative URL');
105
106 promise_test(function(t) {
107 var request = new Request('http://example.com/foo', {method: 'HEAD'});
108 return create_temporary_cache(t)
109 .then(function(cache) {
110 return assert_promise_rejects(
111 cache.put(request, test_response),
112 new TypeError(),
113 'Cache.put should throw a TypeError for non-GET requests.');
114 });
115 }, 'Cache.put with a non-GET request');
116
117 promise_test(function(t) {
118 return create_temporary_cache(t)
119 .then(function(cache) {
120 return assert_promise_rejects(
121 cache.put(test_request, null),
122 new TypeError(),
123 'Cache.put should throw a TypeError for an empty response.');
124 });
125 }, 'Cache.put with an empty response');
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698