browser/devtools/app-manager/test/test_projects_store.html

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 <!DOCTYPE html>
     3 <!--
     4 Bug 907206 - data store for local apps 
     5 -->
     7 <html>
     9   <head>
    10     <meta charset="utf8">
    11     <title></title>
    13     <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
    14     <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css">
    15   </head>
    17   <body>
    19     <script type="application/javascript;version=1.8">
    20       const Cu = Components.utils;
    22       window.onload = function() {
    23         SimpleTest.waitForExplicitFinish();
    25         const {devtools} = Cu.import("resource://gre/modules/devtools/Loader.jsm", {});
    26         const {require} = devtools;
    28         const { AppProjects } = require("devtools/app-manager/app-projects");
    30         function testHosted(projects) {
    31           let manifestURL = document.location.href.replace("test_projects_store.html", "hosted_app/webapp.manifest");
    32           AppProjects.addHosted(manifestURL)
    33             .then(function (app) {
    34               is(projects.length, 1,
    35                  "Hosted app has been added");
    36               is(projects[0], app);
    37               is(app.type, "hosted", "valid type");
    38               is(app.location, manifestURL, "valid location");
    39               is(AppProjects.get(manifestURL), app,
    40                  "get() returns the same app object");
    41               AppProjects.remove(manifestURL)
    42                 .then(function () {
    43                   is(projects.length, 0,
    44                      "Hosted app has been removed");
    45                   SimpleTest.finish();
    46                 });
    47             });
    48         }
    50         AppProjects.once("ready", function (event, projects) {
    51           is(projects, AppProjects.store.object.projects,
    52              "The ready event data is the store projects list");
    53           testHosted(projects);
    54         });
    56       }
    58     </script>
    59   </body>
    60 </html>

mercurial