summaryrefslogtreecommitdiffstats
path: root/devtools/client/styleeditor/test/browser_styleeditor_syncAlreadyOpen.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/styleeditor/test/browser_styleeditor_syncAlreadyOpen.js')
-rw-r--r--devtools/client/styleeditor/test/browser_styleeditor_syncAlreadyOpen.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/devtools/client/styleeditor/test/browser_styleeditor_syncAlreadyOpen.js b/devtools/client/styleeditor/test/browser_styleeditor_syncAlreadyOpen.js
new file mode 100644
index 000000000..84c1c2a7a
--- /dev/null
+++ b/devtools/client/styleeditor/test/browser_styleeditor_syncAlreadyOpen.js
@@ -0,0 +1,50 @@
+/* vim: set ts=2 et sw=2 tw=80: */
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+"use strict";
+
+// Test that changes in the style inspector are synchronized into the
+// style editor.
+
+const TESTCASE_URI = TEST_BASE_HTTP + "sync.html";
+
+const expectedText = `
+ body {
+ border-width: 15px;
+ color: red;
+ }
+
+ #testid {
+ /*! font-size: 4em; */
+ }
+ `;
+
+add_task(function* () {
+ yield addTab(TESTCASE_URI);
+
+ let { inspector, view, toolbox } = yield openRuleView();
+
+ // In this test, make sure the style editor is open before making
+ // changes in the inspector.
+ let { ui } = yield openStyleEditor();
+ let editor = yield ui.editors[0].getSourceEditor();
+
+ let onEditorChange = defer();
+ editor.sourceEditor.on("change", onEditorChange.resolve);
+
+ yield toolbox.getPanel("inspector");
+ yield selectNode("#testid", inspector);
+ let ruleEditor = getRuleViewRuleEditor(view, 1);
+
+ // Disable the "font-size" property.
+ let propEditor = ruleEditor.rule.textProps[0].editor;
+ let onModification = view.once("ruleview-changed");
+ propEditor.enable.click();
+ yield onModification;
+
+ yield openStyleEditor();
+ yield onEditorChange.promise;
+
+ let text = editor.sourceEditor.getText();
+ is(text, expectedText, "style inspector changes are synced");
+});