<!DOCTYPE html>
<title>IDBObjectStore.delete() - removes all of the records in the range</title>
<link rel="author" title="Microsoft" href="http://www.microsoft.com">
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=support.js></script>
<script>
    var db
    var open_rq = createdb(async_test())

    open_rq.onupgradeneeded = function(e) {
        db = e.target.result
        var os = db.createObjectStore("store")

        for(var i = 0; i < 10; i++)
            os.add("data" + i, i)
    }

    open_rq.onsuccess = function (e) {
        var os = db.transaction("store", "readwrite")
                   .objectStore("store")

        os.delete( IDBKeyRange.bound(3, 6) )
        os.count().onsuccess = this.step_func(function(e)
        {
            assert_equals(e.target.result, 6, "Count after deleting 3-6 from 10");
            this.done();
        })
    }
</script>

<div id=log></div>
