summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/IndexedDB/idbdatabase_createObjectStore9-invalidparameters.htm
blob: 65b7535abbadbda282a8849a44da7222825aa4c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<meta charset=utf-8>
<title>createObjectStore: Invalid optionalParameters</title>
<link rel="author" href="mailto:odinho@opera.com" title="Odin Hørthe Omdal">
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=resources/support.js></script>

<script>
    function invalid_optionalParameters(desc, params, exception = "InvalidAccessError") {
        var t = async_test(document.title + " - " + desc);

        createdb(t).onupgradeneeded = function(e) {
            assert_throws_dom(exception, function() {
                e.target.result.createObjectStore("store", params);
            });

            this.done();
        };
    }

    invalid_optionalParameters("autoInc and empty keyPath", {autoIncrement: true, keyPath: ""});
    invalid_optionalParameters("autoInc and keyPath array", {autoIncrement: true, keyPath: []}, "SyntaxError");
    invalid_optionalParameters("autoInc and keyPath array 2", {autoIncrement: true, keyPath: ["hey"]});
    invalid_optionalParameters("autoInc and keyPath object", {autoIncrement: true, keyPath: {a:"hey", b:2}}, "SyntaxError");

</script>

<div id=log></div>