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

Side by Side Diff: content/test/data/indexeddb/cursor_prefetch.js

Issue 401893002: IndexedDB: Stop using webkit-prefixed versions of APIs in tests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More webkitIndexedDB foo and update webkitErrorMessage use too Created 6 years, 5 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
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // These constants should match the ones in renderer_webidbcursor_impl.h 5 // These constants should match the ones in renderer_webidbcursor_impl.h
6 // to make sure the test hits the right code paths. 6 // to make sure the test hits the right code paths.
7 var kPrefetchThreshold = 2; 7 var kPrefetchThreshold = 2;
8 var kMinPrefetchAmount = 5; 8 var kMinPrefetchAmount = 5;
9 9
10 var kNumberOfItems = 200; 10 var kNumberOfItems = 200;
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 } 60 }
61 61
62 if (cursor.key !== count) 62 if (cursor.key !== count)
63 shouldBe("cursor.key", "count"); 63 shouldBe("cursor.key", "count");
64 if (cursor.value !== count) 64 if (cursor.value !== count)
65 shouldBe("cursor.value", "count"); 65 shouldBe("cursor.value", "count");
66 66
67 ++count; 67 ++count;
68 68
69 cursor.continue(); 69 cursor.continue();
70 } 70 };
71 } 71 }
72 72
73 function secondTest() { 73 function secondTest() {
74 debug("secondTest()"); 74 debug("secondTest()");
75 75
76 // Test iterating through the object store, intermixed with 76 // Test iterating through the object store, intermixed with
77 // continue calls to specific keys. 77 // continue calls to specific keys.
78 78
79 var trans = db.transaction(['store'], 'readwrite'); 79 var trans = db.transaction(['store'], 'readwrite');
80 trans.onabort = unexpectedAbortCallback; 80 trans.onabort = unexpectedAbortCallback;
(...skipping 30 matching lines...) Expand all
111 if (jumpTable[i].from === cursor.key) { 111 if (jumpTable[i].from === cursor.key) {
112 expectedKey = jumpTable[i].to; 112 expectedKey = jumpTable[i].to;
113 debug("Jumping from "+ cursor.key + " to " + expectedKey); 113 debug("Jumping from "+ cursor.key + " to " + expectedKey);
114 cursor.continue(expectedKey); 114 cursor.continue(expectedKey);
115 return; 115 return;
116 } 116 }
117 } 117 }
118 118
119 ++expectedKey; 119 ++expectedKey;
120 cursor.continue(); 120 cursor.continue();
121 } 121 };
122 } 122 }
123 123
124 function thirdTest() { 124 function thirdTest() {
125 debug("thirdTest()"); 125 debug("thirdTest()");
126 126
127 // Test iterating straight through the object store in reverse. 127 // Test iterating straight through the object store in reverse.
128 128
129 var trans = db.transaction(['store'], 'readwrite'); 129 var trans = db.transaction(['store'], 'readwrite');
130 trans.onabort = unexpectedAbortCallback; 130 trans.onabort = unexpectedAbortCallback;
131 trans.oncomplete = fourthTest; 131 trans.oncomplete = fourthTest;
(...skipping 14 matching lines...) Expand all
146 expectedKey = kNumberOfItems - count - 1; 146 expectedKey = kNumberOfItems - count - 1;
147 147
148 if (cursor.key !== expectedKey) 148 if (cursor.key !== expectedKey)
149 shouldBe("cursor.key", "expectedKey"); 149 shouldBe("cursor.key", "expectedKey");
150 if (cursor.value !== expectedKey) 150 if (cursor.value !== expectedKey)
151 shouldBe("cursor.value", "expectedKey"); 151 shouldBe("cursor.value", "expectedKey");
152 152
153 ++count; 153 ++count;
154 154
155 cursor.continue(); 155 cursor.continue();
156 } 156 };
157 } 157 }
158 158
159 function fourthTest() { 159 function fourthTest() {
160 debug("fourthTest()"); 160 debug("fourthTest()");
161 161
162 // Test iterating, and then stopping before reaching the end. 162 // Test iterating, and then stopping before reaching the end.
163 // Make sure transaction terminates anyway. 163 // Make sure transaction terminates anyway.
164 164
165 var trans = db.transaction(['store'], 'readwrite'); 165 var trans = db.transaction(['store'], 'readwrite');
166 trans.onabort = unexpectedAbortCallback; 166 trans.onabort = unexpectedAbortCallback;
167 trans.oncomplete = function() { 167 trans.oncomplete = function() {
168 debug("fourthTest() transaction completed"); 168 debug("fourthTest() transaction completed");
169 fifthTest(); 169 fifthTest();
170 } 170 };
171 171
172 var store = trans.objectStore('store'); 172 var store = trans.objectStore('store');
173 var cursorReq = store.openCursor(); 173 var cursorReq = store.openCursor();
174 cursorReq.onerror = unexpectedErrorCallback; 174 cursorReq.onerror = unexpectedErrorCallback;
175 175
176 count = 0; 176 count = 0;
177 cursorReq.onsuccess = function() { 177 cursorReq.onsuccess = function() {
178 cursor = event.target.result; 178 cursor = event.target.result;
179 179
180 if (cursor.key !== count) 180 if (cursor.key !== count)
181 shouldBe("cursor.key", "count"); 181 shouldBe("cursor.key", "count");
182 if (cursor.value !== count) 182 if (cursor.value !== count)
183 shouldBe("cursor.value", "count"); 183 shouldBe("cursor.value", "count");
184 184
185 ++count; 185 ++count;
186 186
187 if (count === 25) { 187 if (count === 25) {
188 // Schedule some other request. 188 // Schedule some other request.
189 var otherReq = store.get(42); 189 var otherReq = store.get(42);
190 otherReq.onerror = unexpectedErrorCallback; 190 otherReq.onerror = unexpectedErrorCallback;
191 otherReq.onsuccess = function() { 191 otherReq.onsuccess = function() {
192 if (count === 25) { 192 if (count === 25) {
193 debug("Other request fired before continue, as expected."); 193 debug("Other request fired before continue, as expected.");
194 } else { 194 } else {
195 debug("Other request fired out-of-order!"); 195 debug("Other request fired out-of-order!");
196 fail(); 196 fail();
197 } 197 }
198 } 198 };
199 199
200 cursor.continue(); 200 cursor.continue();
201 return; 201 return;
202 } 202 }
203 203
204 if (count === 30) { 204 if (count === 30) {
205 // Do a continue first, then another request. 205 // Do a continue first, then another request.
206 cursor.continue(); 206 cursor.continue();
207 207
208 var otherReq = store.get(42); 208 var otherReq = store.get(42);
209 otherReq.onerror = unexpectedErrorCallback; 209 otherReq.onerror = unexpectedErrorCallback;
210 otherReq.onsuccess = function() { 210 otherReq.onsuccess = function() {
211 if (count === 31) { 211 if (count === 31) {
212 debug("Other request fired right after continue as expected."); 212 debug("Other request fired right after continue as expected.");
213 } else { 213 } else {
214 debug("Other request didn't fire right after continue as expected."); 214 debug("Other request didn't fire right after continue as expected.");
215 fail(); 215 fail();
216 } 216 }
217 } 217 };
218 218
219 return; 219 return;
220 } 220 }
221 221
222 if (count === 75) { 222 if (count === 75) {
223 return; // Sudden stop. 223 return; // Sudden stop.
224 } 224 }
225 225
226 cursor.continue(); 226 cursor.continue();
227 } 227 };
228 } 228 }
229 229
230 function fifthTest() { 230 function fifthTest() {
231 debug("fifthTest()"); 231 debug("fifthTest()");
232 232
233 // Test iterating over the pre-fetch threshold, but make sure the 233 // Test iterating over the pre-fetch threshold, but make sure the
234 // cursor is positioned so that it is actually at the last element 234 // cursor is positioned so that it is actually at the last element
235 // in the range when pre-fetch fires, and make sure a null cursor 235 // in the range when pre-fetch fires, and make sure a null cursor
236 // is the result as expected. 236 // is the result as expected.
237 237
(...skipping 13 matching lines...) Expand all
251 251
252 if (cursor === null) { 252 if (cursor === null) {
253 debug("cursor is null"); 253 debug("cursor is null");
254 shouldBe("count", "kPrefetchThreshold + 1"); 254 shouldBe("count", "kPrefetchThreshold + 1");
255 return; 255 return;
256 } 256 }
257 257
258 debug("count: " + count); 258 debug("count: " + count);
259 ++count; 259 ++count;
260 cursor.continue(); 260 cursor.continue();
261 } 261 };
262 } 262 }
263 263
264 function sixthTest() { 264 function sixthTest() {
265 debug("sixthTest()"); 265 debug("sixthTest()");
266 266
267 // Test stepping two cursors simultaneously. First cursor1 steps 267 // Test stepping two cursors simultaneously. First cursor1 steps
268 // for a while, then cursor2, then back to cursor1, etc. 268 // for a while, then cursor2, then back to cursor1, etc.
269 269
270 var trans = db.transaction(['store'], 'readwrite'); 270 var trans = db.transaction(['store'], 'readwrite');
271 trans.onabort = unexpectedAbortCallback; 271 trans.onabort = unexpectedAbortCallback;
(...skipping 29 matching lines...) Expand all
301 if (cursor2 !== null) { 301 if (cursor2 !== null) {
302 cursor2.continue(); 302 cursor2.continue();
303 } else { 303 } else {
304 var req = store.openCursor(); 304 var req = store.openCursor();
305 req.onerror = unexpectedErrorCallback; 305 req.onerror = unexpectedErrorCallback;
306 req.onsuccess = cursor2func; 306 req.onsuccess = cursor2func;
307 } 307 }
308 } else { 308 } else {
309 cursor1.continue(); 309 cursor1.continue();
310 } 310 }
311 } 311 };
312 312
313 var cursor2func = function() { 313 var cursor2func = function() {
314 var cursor = event.target.result; 314 var cursor = event.target.result;
315 if (cursor === null) { 315 if (cursor === null) {
316 shouldBe("count2", "kNumberOfItems"); 316 shouldBe("count2", "kNumberOfItems");
317 return; 317 return;
318 } 318 }
319 319
320 if (cursor2 === null) { 320 if (cursor2 === null) {
321 cursor2 = cursor; 321 cursor2 = cursor;
322 } 322 }
323 323
324 if (cursor2.key !== count2) 324 if (cursor2.key !== count2)
325 shouldBe("cursor2.key", "count2"); 325 shouldBe("cursor2.key", "count2");
326 if (cursor2.value !== count2) 326 if (cursor2.value !== count2)
327 shouldBe("cursor2.value", "count2"); 327 shouldBe("cursor2.value", "count2");
328 328
329 ++count2; 329 ++count2;
330 330
331 if (count2 % 20 === 0) { 331 if (count2 % 20 === 0) {
332 cursor1.continue(); 332 cursor1.continue();
333 } else { 333 } else {
334 cursor2.continue(); 334 cursor2.continue();
335 } 335 }
336 } 336 };
337 337
338 var req = store.openCursor(); 338 var req = store.openCursor();
339 req.onerror = unexpectedErrorCallback; 339 req.onerror = unexpectedErrorCallback;
340 req.onsuccess = cursor1func; 340 req.onsuccess = cursor1func;
341 } 341 }
342 342
343 function seventhTest() { 343 function seventhTest() {
344 debug("seventhTest()"); 344 debug("seventhTest()");
345 345
346 // Test iterating straight through an index. 346 // Test iterating straight through an index.
(...skipping 18 matching lines...) Expand all
365 365
366 if (cursor.key !== count) 366 if (cursor.key !== count)
367 shouldBe("cursor.key", "count"); 367 shouldBe("cursor.key", "count");
368 if (cursor.primaryKey !== count) 368 if (cursor.primaryKey !== count)
369 shouldBe("cursor.primaryKey", "count"); 369 shouldBe("cursor.primaryKey", "count");
370 if (cursor.value !== count) 370 if (cursor.value !== count)
371 shouldBe("cursor.value", "count"); 371 shouldBe("cursor.value", "count");
372 372
373 ++count; 373 ++count;
374 cursor.continue(); 374 cursor.continue();
375 } 375 };
376 } 376 }
377 377
378 function eighthTest() { 378 function eighthTest() {
379 debug("eighthTest()"); 379 debug("eighthTest()");
380 380
381 // Run a key cursor over an index. 381 // Run a key cursor over an index.
382 382
383 var trans = db.transaction(['store'], 'readwrite'); 383 var trans = db.transaction(['store'], 'readwrite');
384 trans.onabort = unexpectedAbortCallback; 384 trans.onabort = unexpectedAbortCallback;
385 trans.oncomplete = done; 385 trans.oncomplete = done;
(...skipping 12 matching lines...) Expand all
398 return; 398 return;
399 } 399 }
400 400
401 if (cursor.key !== count) 401 if (cursor.key !== count)
402 shouldBe("cursor.key", "count"); 402 shouldBe("cursor.key", "count");
403 if (cursor.primaryKey !== count) 403 if (cursor.primaryKey !== count)
404 shouldBe("cursor.primaryKey", "count"); 404 shouldBe("cursor.primaryKey", "count");
405 405
406 ++count; 406 ++count;
407 cursor.continue(); 407 cursor.continue();
408 } 408 };
409 } 409 }
OLDNEW
« no previous file with comments | « content/test/data/indexeddb/corrupted_open_db_recovery.html ('k') | content/test/data/indexeddb/cursor_test.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698