| OLD | NEW | 
| (Empty) |  | 
 |   1 <!DOCTYPE html> | 
 |   2 <meta charset="utf-8"> | 
 |   3 <title>IDBObjectStore.createIndex() - Event ordering for a later deleted index</
    title> | 
 |   4 <link rel="author" href="mailto:odinho@opera.com" title="Odin Hørthe Omdal"> | 
 |   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, | 
 |  11       events = [], | 
 |  12       t = async_test(document.title, {timeout: 10000}) | 
 |  13  | 
 |  14     var open_rq = createdb(t); | 
 |  15     open_rq.onupgradeneeded = function(e) { | 
 |  16         db = e.target.result; | 
 |  17         e.target.transaction.oncomplete = log("transaction.complete"); | 
 |  18  | 
 |  19         var txn = e.target.transaction, | 
 |  20           objStore = db.createObjectStore("store"); | 
 |  21  | 
 |  22         var rq_add1 = objStore.add({ animal: "Unicorn" }, 1); | 
 |  23         rq_add1.onsuccess = log("rq_add1.success"); | 
 |  24         rq_add1.onerror   = log("rq_add1.error"); | 
 |  25  | 
 |  26         objStore.createIndex("index", "animal", { unique: true }); | 
 |  27  | 
 |  28         var rq_add2 = objStore.add({ animal: "Unicorn" }, 2); | 
 |  29         rq_add2.onsuccess = log("rq_add2.success"); | 
 |  30         rq_add2.onerror   = function(e) { | 
 |  31             log("rq_add2.error")(e); | 
 |  32             e.preventDefault(); | 
 |  33             e.stopPropagation(); | 
 |  34         } | 
 |  35  | 
 |  36         objStore.deleteIndex("index"); | 
 |  37  | 
 |  38         var rq_add3 = objStore.add({ animal: "Unicorn" }, 3); | 
 |  39         rq_add3.onsuccess = log("rq_add3.success"); | 
 |  40         rq_add3.onerror   = log("rq_add3.error"); | 
 |  41     } | 
 |  42  | 
 |  43     open_rq.onsuccess = function(e) { | 
 |  44         log("open_rq.success")(e); | 
 |  45         assert_object_equals(events, [ "rq_add1.success", | 
 |  46                                        "rq_add2.error: ConstraintError", | 
 |  47                                        "rq_add3.success", | 
 |  48  | 
 |  49                                        "transaction.complete", | 
 |  50  | 
 |  51                                        "open_rq.success" ], | 
 |  52                             "events"); | 
 |  53         t.done(); | 
 |  54     } | 
 |  55  | 
 |  56     function log(msg) { | 
 |  57         return function(e) { | 
 |  58             if(e && e.target && e.target.error) | 
 |  59                 events.push(msg + ": " + e.target.error.name); | 
 |  60             else | 
 |  61                 events.push(msg); | 
 |  62         }; | 
 |  63     } | 
 |  64 </script> | 
 |  65  | 
 |  66 <div id="log"></div> | 
| OLD | NEW |