diff options
Diffstat (limited to 'testing/web-platform/tests/IndexedDB/idbobjectstore_delete.htm')
-rw-r--r-- | testing/web-platform/tests/IndexedDB/idbobjectstore_delete.htm | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/testing/web-platform/tests/IndexedDB/idbobjectstore_delete.htm b/testing/web-platform/tests/IndexedDB/idbobjectstore_delete.htm new file mode 100644 index 000000000..337289296 --- /dev/null +++ b/testing/web-platform/tests/IndexedDB/idbobjectstore_delete.htm @@ -0,0 +1,46 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>IDBObjectStore.delete() - delete removes record (inline keys)</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, + t = async_test(), + record = { key: 1, property: "data" }; + + var open_rq = createdb(t); + open_rq.onupgradeneeded = function(e) { + db = e.target.result; + + var objStore = db.createObjectStore("test", { keyPath: "key" }); + objStore.add(record); + }; + + open_rq.onsuccess = function(e) { + var delete_rq = db.transaction("test", "readwrite") + .objectStore("test") + .delete(record.key); + + delete_rq.onsuccess = t.step_func(function(e) { + assert_equals(e.target.result, undefined); + + e.target.transaction.oncomplete = t.step_func(VerifyRecordRemoved); + }); + }; + + function VerifyRecordRemoved() { + var rq = db.transaction("test") + .objectStore("test") + .get(record.key); + + rq.onsuccess = t.step_func(function(e) { + assert_equals(e.target.result, undefined); + t.done(); + }); + } +</script> + +<div id="log"></div> |