Index: LayoutTests/imported/web-platform-tests/IndexedDB/idbobjectstore_createIndex2.htm |
diff --git a/LayoutTests/imported/web-platform-tests/IndexedDB/idbobjectstore_createIndex2.htm b/LayoutTests/imported/web-platform-tests/IndexedDB/idbobjectstore_createIndex2.htm |
new file mode 100644 |
index 0000000000000000000000000000000000000000..48beb49f371b2ac6620cd1c3ff80c51f04db89fc |
--- /dev/null |
+++ b/LayoutTests/imported/web-platform-tests/IndexedDB/idbobjectstore_createIndex2.htm |
@@ -0,0 +1,41 @@ |
+<!DOCTYPE html> |
+<meta charset="utf-8"> |
+<title>IDBObjectStore.createIndex() - attempt to create an index that requires unique values on an object store already contains duplicates </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, aborted, |
+ t = async_test(), |
+ record = { indexedProperty: "bar" }; |
+ |
+ var open_rq = createdb(t); |
+ open_rq.onupgradeneeded = function(e) { |
+ db = e.target.result; |
+ var txn = e.target.transaction, |
+ objStore = db.createObjectStore("store"); |
+ |
+ objStore.add(record, 1); |
+ objStore.add(record, 2); |
+ var index = objStore.createIndex("index", "indexedProperty", { unique: true }); |
+ |
+ assert_true(index instanceof IDBIndex, "IDBIndex"); |
+ |
+ e.target.transaction.onabort = t.step_func(function(e) { |
+ aborted = true; |
+ assert_equals(e.type, "abort", "event type"); |
+ }); |
+ |
+ db.onabort = function(e) { |
+ assert_true(aborted, "transaction.abort event has fired"); |
+ t.done(); |
+ }; |
+ |
+ e.target.transaction.oncomplete = fail(t, "got complete, expected abort"); |
+ }; |
+ |
+</script> |
+ |
+<div id="log"></div> |