summaryrefslogtreecommitdiffstats
path: root/devtools/client/webide/test/test_manifestUpdate.html
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/webide/test/test_manifestUpdate.html')
-rw-r--r--devtools/client/webide/test/test_manifestUpdate.html98
1 files changed, 0 insertions, 98 deletions
diff --git a/devtools/client/webide/test/test_manifestUpdate.html b/devtools/client/webide/test/test_manifestUpdate.html
deleted file mode 100644
index 66f9affd0..000000000
--- a/devtools/client/webide/test/test_manifestUpdate.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<!DOCTYPE html>
-
-<html>
-
- <head>
- <meta charset="utf8">
- <title></title>
-
- <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
- <script type="application/javascript" src="chrome://mochikit/content/chrome-harness.js"></script>
- <script type="application/javascript;version=1.8" src="head.js"></script>
- <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css">
- </head>
-
- <body>
-
- <script type="application/javascript;version=1.8">
- window.onload = function() {
- SimpleTest.waitForExplicitFinish();
-
- let {TextDecoder, OS} = Cu.import("resource://gre/modules/osfile.jsm", {});
-
- Task.spawn(function* () {
- let win = yield openWebIDE();
- let winProject = getProjectWindow(win);
- let AppManager = win.AppManager;
-
- function isProjectMarkedAsValid() {
- let details = win.frames[1];
- return !details.document.body.classList.contains("error");
- }
-
- let packagedAppLocation = getTestFilePath("app");
-
- let onValidated = waitForUpdate(win, "project-validated");
- let onDetails = waitForUpdate(win, "details");
- yield winProject.projectList.importPackagedApp(packagedAppLocation);
- yield onValidated;
- yield onDetails;
-
- let project = win.AppManager.selectedProject;
-
- ok("name" in project.manifest, "manifest includes name");
- is(project.name, project.manifest.name, "Display name uses manifest name");
- ok(isProjectMarkedAsValid(), "project is marked as valid");
-
- // Change the name
- let originalName = project.manifest.name;
-
- project.manifest.name = "xxx";
-
- // Write to disk
- yield AppManager.writeManifest(project);
-
- // Read file
- let manifestPath = OS.Path.join(packagedAppLocation, "manifest.webapp");
- let Decoder = new TextDecoder();
- let data = yield OS.File.read(manifestPath);
- data = new TextDecoder().decode(data);
- let json = JSON.parse(data);
- is(json.name, "xxx", "manifest written on disc");
-
- // Make the manifest invalid on disk
- delete json.name;
- let Encoder = new TextEncoder();
- data = Encoder.encode(JSON.stringify(json));
- yield OS.File.writeAtomic(manifestPath, data , {tmpPath: manifestPath + ".tmp"});
-
- // Trigger validation
- yield AppManager.validateAndUpdateProject(AppManager.selectedProject);
- yield nextTick();
-
- ok(!("name" in project.manifest), "manifest has been updated");
- is(project.name, "--", "Placeholder is used for display name");
- ok(!isProjectMarkedAsValid(), "project is marked as invalid");
-
- // Make the manifest valid on disk
- project.manifest.name = originalName;
- yield AppManager.writeManifest(project);
-
- // Trigger validation
- yield AppManager.validateAndUpdateProject(AppManager.selectedProject);
- yield nextTick();
-
- ok("name" in project.manifest, "manifest includes name");
- is(project.name, originalName, "Display name uses original manifest name");
- ok(isProjectMarkedAsValid(), "project is marked as valid");
-
- yield closeWebIDE(win);
-
- yield removeAllProjects();
-
- SimpleTest.finish();
- });
- }
- </script>
- </body>
-</html>