diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /devtools/client/shared/test/browser_inplace-editor-02.js | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'devtools/client/shared/test/browser_inplace-editor-02.js')
-rw-r--r-- | devtools/client/shared/test/browser_inplace-editor-02.js | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/devtools/client/shared/test/browser_inplace-editor-02.js b/devtools/client/shared/test/browser_inplace-editor-02.js new file mode 100644 index 000000000..811c30123 --- /dev/null +++ b/devtools/client/shared/test/browser_inplace-editor-02.js @@ -0,0 +1,71 @@ +/* vim: set ts=2 et sw=2 tw=80: */ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ +/* import-globals-from helper_inplace_editor.js */ + +"use strict"; + +loadHelperScript("helper_inplace_editor.js"); + +// Test that the trimOutput option for the inplace editor works correctly. + +add_task(function* () { + yield addTab("data:text/html;charset=utf-8,inline editor tests"); + let [host, , doc] = yield createHost(); + + yield testNonTrimmed(doc); + yield testTrimmed(doc); + + host.destroy(); + gBrowser.removeCurrentTab(); +}); + +function testNonTrimmed(doc) { + info("Testing the trimOutput=false option"); + let def = defer(); + + let initial = "\nMultiple\nLines\n"; + let changed = " \nMultiple\nLines\n with more whitespace "; + createInplaceEditorAndClick({ + trimOutput: false, + multiline: true, + initial: initial, + start: function (editor) { + is(editor.input.value, initial, "Explicit initial value should be used."); + editor.input.value = changed; + EventUtils.sendKey("return"); + }, + done: onDone(changed, true, def) + }, doc); + + return def.promise; +} + +function testTrimmed(doc) { + info("Testing the trimOutput=true option (default value)"); + let def = defer(); + + let initial = "\nMultiple\nLines\n"; + let changed = " \nMultiple\nLines\n with more whitespace "; + createInplaceEditorAndClick({ + initial: initial, + multiline: true, + start: function (editor) { + is(editor.input.value, initial, "Explicit initial value should be used."); + editor.input.value = changed; + EventUtils.sendKey("return"); + }, + done: onDone(changed.trim(), true, def) + }, doc); + + return def.promise; +} + +function onDone(value, isCommit, def) { + return function (actualValue, actualCommit) { + info("Inplace-editor's done callback executed, checking its state"); + is(actualValue, value, "The value is correct"); + is(actualCommit, isCommit, "The commit boolean is correct"); + def.resolve(); + }; +} |