<!DOCTYPE html>
<meta charset="utf-8">
<title>IDBFactory.cmp() - invalid key</title>
<link rel="author" title="Intel" href="http://www.intel.com">
<link rel="help" href="https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#widl-IDBFactory-cmp-short-any-first-any-second">
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=support.js></script>
<div id=log></div>
<script>
    test( function() {
        assert_throws(new TypeError(), function() {
            indexedDB.cmp();
        });
    }, "IDBFactory.cmp() - no argument");

    test( function() {
        assert_throws("DataError", function() {
            indexedDB.cmp(null, null);
        });
        assert_throws("DataError", function() {
            indexedDB.cmp(1, null);
        });
        assert_throws("DataError", function() {
            indexedDB.cmp(null, 1);
        });
    }, "IDBFactory.cmp() - null");

    test( function() {
        assert_throws("DataError", function() {
            indexedDB.cmp(NaN, NaN);
        });
        assert_throws("DataError", function() {
            indexedDB.cmp(1, NaN);
        });
        assert_throws("DataError", function() {
            indexedDB.cmp(NaN, 1);
        });
    }, "IDBFactory.cmp() - NaN");
</script>

