diff options
Diffstat (limited to 'devtools/client/webide/test/test_manifestUpdate.html')
-rw-r--r-- | devtools/client/webide/test/test_manifestUpdate.html | 98 |
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> |