Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / imported / web-platform-tests / IndexedDB / idbcursor_update_objectstore4.htm
1 <!DOCTYPE html>
2 <title>IDBCursor.update() - index - modify a record in the object store </title>
3 <link rel="author" href="mailto:odinho@opera.com" title="Odin Hørthe Omdal">
4 <script src="../../../resources/testharness.js"></script>
5 <script src="../../../resources/testharnessreport.js"></script>
6 <script src="support.js"></script>
7
8 <script>
9
10     var db,
11       t = async_test(document.title, {timeout: 10000})
12
13     var open_rq = createdb(t);
14     open_rq.onupgradeneeded = function(e) {
15         db = e.target.result;
16         var objStore = db.createObjectStore("test");
17
18         objStore.add("data", "key");
19     };
20
21     open_rq.onsuccess = t.step_func(function(e) {
22         var txn = db.transaction("test", "readwrite"),
23           cursor_rq = txn.objectStore("test")
24                          .openCursor();
25
26         cursor_rq.onsuccess = t.step_func(function(e) {
27             var cursor = e.target.result;
28
29             cursor.value = "new data!";
30             cursor.update(cursor.value).onsuccess = t.step_func(function(e) {
31                 assert_equals(e.target.result, "key");
32                 t.done();
33             });
34         });
35     });
36
37 </script>
38
39 <div id="log"></div>