test_request_readyState.js (1388B)
1 /** 2 * Any copyright is dedicated to the Public Domain. 3 * http://creativecommons.org/publicdomain/zero/1.0/ 4 */ 5 6 /* exported testGenerator */ 7 var testGenerator = testSteps(); 8 9 function* testSteps() { 10 const name = this.window ? window.location.pathname : "Splendid Test"; 11 12 let request = indexedDB.open(name, 1); 13 is(request.readyState, "pending", "Correct readyState"); 14 15 request.onerror = errorHandler; 16 request.onupgradeneeded = grabEventAndContinueHandler; 17 request.onsuccess = grabEventAndContinueHandler; 18 let event = yield undefined; 19 20 is(request.readyState, "done", "Correct readyState"); 21 22 let db = event.target.result; 23 24 let objectStore = db.createObjectStore("foo"); 25 let key = 10; 26 27 request = objectStore.add({}, key); 28 is(request.readyState, "pending", "Correct readyState"); 29 30 request.onerror = errorHandler; 31 request.onsuccess = grabEventAndContinueHandler; 32 event = yield undefined; 33 34 is(request.readyState, "done", "Correct readyState"); 35 is(event.target.result, key, "Correct key"); 36 37 request = objectStore.get(key); 38 request.onerror = errorHandler; 39 request.onsuccess = grabEventAndContinueHandler; 40 is(request.readyState, "pending", "Correct readyState"); 41 event = yield undefined; 42 43 ok(event.target.result, "Got something"); 44 is(request.readyState, "done", "Correct readyState"); 45 46 // Wait for success 47 yield undefined; 48 49 finishTest(); 50 }