Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / imported / web-platform-tests / IndexedDB / idbcursor_update_objectstore2.htm
1 <!DOCTYPE html>
2 <title>IDBCursor.update() - object store - attempt to modify a record in a read-only transaction</title>
3 <link rel="author" title="Microsoft" href="http://www.microsoft.com">
4 <script src="../../../resources/testharness.js"></script>
5 <script src="../../../resources/testharnessreport.js"></script>
6 <script src="support.js"></script>
7
8 <script>
9     var db,
10       t = async_test(),
11       records = [ { pKey: "primaryKey_0", iKey: "indexKey_0" },
12                   { pKey: "primaryKey_1", iKey: "indexKey_1" } ];
13
14     var open_rq = createdb(t);
15     open_rq.onupgradeneeded = function(e) {
16         db = e.target.result;
17
18         var objStore = db.createObjectStore("test", { keyPath: "pKey" });
19
20         for (var i = 0; i < records.length; i++)
21             objStore.add(records[i]);
22     };
23
24     open_rq.onsuccess = function(e) {
25         var cursor_rq = db.transaction("test")
26                           .objectStore("test")
27                           .openCursor();
28
29         cursor_rq.onsuccess = t.step_func(function(e) {
30             var cursor = e.target.result;
31             assert_throws('ReadOnlyError', function() { cursor.update(cursor.value); });
32             t.done();
33         });
34     }
35
36 </script>
37
38 <div id="log"></div>