PHP Classes

File: public/js/tinymce/src/plugins/compat3x/src/test/js/browser/Compat3xPluginTest.js

Recommend this page to a friend!
  Classes of Abed Nego Ragil Putra   GoLavaCMS   public/js/tinymce/src/plugins/compat3x/src/test/js/browser/Compat3xPluginTest.js   Download  
File: public/js/tinymce/src/plugins/compat3x/src/test/js/browser/Compat3xPluginTest.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: GoLavaCMS
Publish content on Web pages with SEO support
Author: By
Last change:
Date: 6 years ago
Size: 3,705 bytes
 

Contents

Class file image Download
asynctest( 'browser.tinymce.plugins.compat3x.Compat3xPluginTest', [ 'ephox.agar.api.Assertions', 'ephox.agar.api.Chain', 'ephox.agar.api.GeneralSteps', 'ephox.agar.api.Logger', 'ephox.agar.api.Monitor', 'ephox.agar.api.Pipeline', 'ephox.agar.api.Step', 'ephox.agar.api.UiFinder', 'ephox.katamari.api.Fun', 'ephox.mcagar.api.TinyApis', 'ephox.mcagar.api.TinyLoader', 'ephox.mcagar.api.TinyUi', 'ephox.sugar.api.node.Element', 'global!window', 'tinymce.core.api.Tinymce', 'tinymce.themes.modern.Theme' ], function (Assertions, Chain, GeneralSteps, Logger, Monitor, Pipeline, Step, UiFinder, Fun, TinyApis, TinyLoader, TinyUi, Element, window, Tinymce, ModernTheme) { var success = arguments[arguments.length - 2]; var failure = arguments[arguments.length - 1]; window.tinymce = Tinymce; ModernTheme(); var getDialogWindow = function (editor) { return editor.windowManager.getWindows()[0].getContentWindow(); }; var sAddI18n = function (prefix, data) { return Step.sync(function () { Tinymce.addI18n(prefix, data); }); }; var sOpenWindow = function (editor, settings) { return Step.sync(function () { editor.windowManager.open(settings); }); }; var sDialogExecCommand = function (editor, cmd) { return Step.sync(function () { var win = getDialogWindow(editor); win.tinyMCEPopup.execCommand(cmd); }); }; var sExistInDialog = function (editor, selector) { return Chain.asStep({}, [ Chain.mapper(function (_) { return Element.fromDom(getDialogWindow(editor).document.body); }), UiFinder.cFindIn(selector) ]); }; var sRegisterCompatEvent = function (editor, eventName, f) { return Step.sync(function (done, die) { editor[eventName].add(f); }); }; var sAssertMonitorCount = function (label, expectedCount, monitor) { return Step.sync(function () { Assertions.assertEq(label, expectedCount, monitor.get()); }); }; TinyLoader.setup(function (editor, onSuccess, onFailure) { var tinyUi = TinyUi(editor); var tinyApis = TinyApis(editor); var setContentMonitor = Monitor(0, Fun.noop); var getContentMonitor = Monitor(0, Fun.noop); Pipeline.async({}, [ Logger.t('Open a dialog with i18n translations and execute bold command and make sure events fire', GeneralSteps.sequence([ sRegisterCompatEvent(editor, 'onSetContent', setContentMonitor.run), sRegisterCompatEvent(editor, 'onGetContent', getContentMonitor.run), tinyApis.sSetContent('<p>a</p>'), tinyApis.sSetSelection([0, 0], 0, [0, 0], 1), sAddI18n('en.prefix', { test: 'x' }), sOpenWindow(editor, { url: '/project/src/plugins/compat3x/src/test/html/dialog.html' }), tinyUi.sWaitForPopup('Wait for dialog', 'div.mce-title:contains("Dialog")'), sExistInDialog(editor, 'h1:contains("x")'), sDialogExecCommand(editor, 'bold'), tinyApis.sAssertContent('<p><strong>a</strong></p>'), sAssertMonitorCount('Set onSetContent should be fired once', 1, setContentMonitor), sAssertMonitorCount('Set onGetContent should be fired once', 1, getContentMonitor) ])) ], function () { delete window.tinymce; onSuccess(); }, onFailure); }, { external_plugins: { 'compat3x': '/project/src/plugins/compat3x/src/main/js/plugin.js' }, toolbar: 'link', skin_url: '/project/src/skins/lightgray/dist/lightgray' }, success, failure); } );