OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <meta charset="utf-8"> |
| 3 <title>IDBObjectStore.createIndex() - attempt to create an index that requires u
nique values on an object store already contains duplicates </title> |
| 4 <link rel="author" title="Microsoft" href="http://www.microsoft.com"> |
| 5 <script src="../../../resources/testharness.js"></script> |
| 6 <script src="../../../resources/testharnessreport.js"></script> |
| 7 <script src="support.js"></script> |
| 8 |
| 9 <script> |
| 10 var db, aborted, |
| 11 t = async_test(), |
| 12 record = { indexedProperty: "bar" }; |
| 13 |
| 14 var open_rq = createdb(t); |
| 15 open_rq.onupgradeneeded = function(e) { |
| 16 db = e.target.result; |
| 17 var txn = e.target.transaction, |
| 18 objStore = db.createObjectStore("store"); |
| 19 |
| 20 objStore.add(record, 1); |
| 21 objStore.add(record, 2); |
| 22 var index = objStore.createIndex("index", "indexedProperty", { unique: t
rue }); |
| 23 |
| 24 assert_true(index instanceof IDBIndex, "IDBIndex"); |
| 25 |
| 26 e.target.transaction.onabort = t.step_func(function(e) { |
| 27 aborted = true; |
| 28 assert_equals(e.type, "abort", "event type"); |
| 29 }); |
| 30 |
| 31 db.onabort = function(e) { |
| 32 assert_true(aborted, "transaction.abort event has fired"); |
| 33 t.done(); |
| 34 }; |
| 35 |
| 36 e.target.transaction.oncomplete = fail(t, "got complete, expected abort"
); |
| 37 }; |
| 38 |
| 39 </script> |
| 40 |
| 41 <div id="log"></div> |
OLD | NEW |