Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / imported / web-platform-tests / IndexedDB / idbcursor_advance_objectstore2.htm
1 <!DOCTYPE html>
2 <meta charset="utf-8">
3 <title>IDBCursor.advance() - object store - throw TypeError</title>
4 <link rel="author" title="Intel" href="http://www.intel.com">
5 <link rel="help" href="https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#widl-IDBCursor-advance-void-unsigned-long-count">
6 <script src="../../../resources/testharness.js"></script>
7 <script src="../../../resources/testharnessreport.js"></script>
8 <script src="support.js"></script>
9 <div id="log"></div>
10 <script>
11     var db,
12         t = async_test(),
13         records = [{ pKey: "primaryKey_0"},
14                    { pKey: "primaryKey_1"}];
15
16     var open_rq = createdb(t);
17     open_rq.onupgradeneeded = function (event) {
18         db = event.target.result;
19         var objStore = db.createObjectStore("store", {keyPath:"pKey"});
20         for (var i = 0; i < records.length; i++) {
21             objStore.add(records[i]);
22         }
23     }
24
25     open_rq.onsuccess = function (event) {
26         var txn = db.transaction("store", "readwrite");
27         var rq = txn.objectStore("store").openCursor();
28         rq.onsuccess = t.step_func(function(event) {
29             var cursor = event.target.result;
30             assert_true(cursor instanceof IDBCursor);
31
32             assert_throws(new TypeError(), function() {
33                 cursor.advance(0);
34             }, "Calling advance() with count argument 0 should throw TypeError.");
35
36             t.done();
37         });
38     }
39 </script>
40