Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / imported / web-platform-tests / IndexedDB / idbcursor_continue_objectstore3.htm
1 <!DOCTYPE html>
2 <title>IDBCursor.continue() - object store - attempt to iterate to the previous record when the direction is set for the next record</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" },
12                   { pKey: "primaryKey_1" } ];
13
14     var open_rq = createdb(t);
15     open_rq.onupgradeneeded = function(e) {
16         db = e.target.result;
17         var objStore = db.createObjectStore("test", {keyPath:"pKey"});
18
19         for (var i = 0; i < records.length; i++)
20             objStore.add(records[i]);
21     };
22
23     open_rq.onsuccess = function(e) {
24         var cursor_rq = db.transaction("test")
25                           .objectStore("test")
26                           .openCursor(undefined, "next");
27
28         cursor_rq.onsuccess = t.step_func(function(e) {
29             var cursor = e.target.result;
30
31             assert_true(cursor instanceof IDBCursor, "cursor exist");
32             assert_throws("DataError",
33                 function() { cursor.continue(records[0].pKey); });
34
35             t.done();
36         });
37     };
38 </script>
39
40 <div id="log"> </div>