Wed, 31 Dec 2014 06:55:50 +0100
Added tag UPSTREAM_283F7C6 for changeset ca08bd8f51b2
1 /**
2 * Any copyright is dedicated to the Public Domain.
3 * http://creativecommons.org/publicdomain/zero/1.0/
4 */
6 var testGenerator = testSteps();
8 function testSteps()
9 {
10 let request = indexedDB.open(this.window ? window.location.pathname : "Splendid Test", 1);
11 request.onerror = errorHandler;
12 request.onupgradeneeded = grabEventAndContinueHandler;
13 let event = yield undefined;
15 let db = request.result;
16 db.onerror = errorHandler;
18 let objectStore = db.createObjectStore("foo", { keyPath: "id",
19 autoIncrement: true });
20 objectStore.createIndex("first","first");
21 objectStore.createIndex("second","second");
22 objectStore.createIndex("third","third");
24 let data = { first: "foo", second: "foo", third: "foo" };
26 objectStore.add(data).onsuccess = grabEventAndContinueHandler;
27 event = yield undefined;
29 is(event.target.result, 1, "Added entry");
30 request.onsuccess = grabEventAndContinueHandler;
32 event = yield undefined;
34 let objectStore = db.transaction("foo").objectStore("foo");
35 let first = objectStore.index("first");
36 let second = objectStore.index("second");
37 let third = objectStore.index("third");
39 first.get("foo").onsuccess = grabEventAndContinueHandler;
40 event = yield undefined;
42 is (event.target.result.id, 1, "Entry in first");
44 second.get("foo").onsuccess = grabEventAndContinueHandler;
45 event = yield undefined;
47 is (event.target.result.id, 1, "Entry in second");
49 third.get("foo").onsuccess = grabEventAndContinueHandler;
50 event = yield undefined;
52 is (event.target.result.id, 1, "Entry in third");
54 finishTest();
55 yield undefined;
56 }