dom/indexedDB/test/unit/test_deleteDatabase_interactions.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 /**
     2  * Any copyright is dedicated to the Public Domain.
     3  * http://creativecommons.org/publicdomain/zero/1.0/
     4  */
     6 var testGenerator = testSteps();
     8 function testSteps()
     9 {
    10   const name = this.window ? window.location.pathname : "Splendid Test";
    12   let request = indexedDB.open(name, 10);
    13   request.onerror = errorHandler;
    14   request.onsuccess = unexpectedSuccessHandler;
    15   request.onupgradeneeded = grabEventAndContinueHandler;
    17   ok(request instanceof IDBOpenDBRequest, "Expect an IDBOpenDBRequest");
    19   let event = yield undefined;
    21   is(event.type, "upgradeneeded", "Expect an upgradeneeded event");
    22   ok(event instanceof IDBVersionChangeEvent, "Expect a versionchange event");
    24   let db = event.target.result;
    25   db.createObjectStore("stuff");
    27   request.onsuccess = grabEventAndContinueHandler;
    29   event = yield undefined;
    31   is(event.type, "success", "Expect a success event");
    32   is(event.target, request, "Event has right target");
    33   ok(event.target.result instanceof IDBDatabase, "Result should be a database");
    34   is(db.objectStoreNames.length, 1, "Expect an objectStore here");
    36   db.close();
    38   let request = indexedDB.deleteDatabase(name);
    40   request.onerror = errorHandler;
    41   request.onsuccess = grabEventAndContinueHandler;
    43   ok(request instanceof IDBOpenDBRequest, "Expect an IDBOpenDBRequest");
    45   let openRequest = indexedDB.open(name, 1);
    46   openRequest.onerror = errorHandler;
    47   openRequest.onsuccess = unexpectedSuccessHandler;
    49   event = yield undefined;
    50   is(event.type, "success", "expect a success event");
    51   is(event.target, request, "event has right target");
    52   is(event.target.result, null, "event should have no result");
    54   openRequest.onsuccess = grabEventAndContinueHandler;
    56   event = yield undefined;
    57   is(event.target.result.version, 1, "DB has proper version");
    58   is(event.target.result.objectStoreNames.length, 0, "DB should have no object stores");
    60   finishTest();
    61   yield undefined;
    62 }

mercurial