PHP Classes

File: public/js/tinymce/src/core/src/test/js/browser/caret/FakeCaretTest.js

Recommend this page to a friend!
  Classes of Abed Nego Ragil Putra   GoLavaCMS   public/js/tinymce/src/core/src/test/js/browser/caret/FakeCaretTest.js   Download  
File: public/js/tinymce/src/core/src/test/js/browser/caret/FakeCaretTest.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: 4,152 bytes
 

Contents

Class file image Download
asynctest( 'browser.tinymce.core.caret.FakeCaretTest', [ 'ephox.mcagar.api.LegacyUnit', 'ephox.agar.api.Pipeline', 'tinymce.core.Env', 'tinymce.core.caret.FakeCaret', 'tinymce.core.dom.DomQuery', 'tinymce.core.text.Zwsp', 'tinymce.core.test.CaretAsserts', 'tinymce.core.test.ViewBlock' ], function (LegacyUnit, Pipeline, Env, FakeCaret, $, Zwsp, CaretAsserts, ViewBlock) { var success = arguments[arguments.length - 2]; var failure = arguments[arguments.length - 1]; var suite = LegacyUnit.createSuite(); var viewBlock = new ViewBlock(); var fakeCaret; if (!Env.ceFalse) { return; } var getRoot = function () { return viewBlock.get(); }; var setup = function () { fakeCaret = new FakeCaret(getRoot(), isBlock); }; var teardown = function () { fakeCaret.destroy(); }; var isBlock = function (node) { return node.nodeName === 'DIV'; }; suite.test('show/hide (before, block)', function () { var rng, $fakeCaretElm; $(getRoot()).html('<div>a</div>'); rng = fakeCaret.show(true, $('div', getRoot())[0]); $fakeCaretElm = $(getRoot()).children(); LegacyUnit.equal($fakeCaretElm[0].nodeName, 'P'); LegacyUnit.equal($fakeCaretElm.attr('data-mce-caret'), 'before'); CaretAsserts.assertRange(rng, CaretAsserts.createRange($fakeCaretElm[0], 0, $fakeCaretElm[0], 0)); fakeCaret.hide(); LegacyUnit.equal($('*[data-mce-caret]', getRoot()).length, 0); }); suite.test('show/hide (before, block)', function () { var rng, $fakeCaretElm; $(getRoot()).html('<div>a</div>'); rng = fakeCaret.show(false, $('div', getRoot())[0]); $fakeCaretElm = $(getRoot()).children(); LegacyUnit.equal($fakeCaretElm[1].nodeName, 'P'); LegacyUnit.equal($fakeCaretElm.eq(1).attr('data-mce-caret'), 'after'); CaretAsserts.assertRange(rng, CaretAsserts.createRange($fakeCaretElm[1], 0, $fakeCaretElm[1], 0)); fakeCaret.hide(); LegacyUnit.equal($('*[data-mce-caret]', getRoot()).length, 0); }); suite.test('show/hide (before, inline)', function () { var rng, $fakeCaretText; $(getRoot()).html('<span>a</span>'); rng = fakeCaret.show(true, $('span', getRoot())[0]); $fakeCaretText = $(getRoot()).contents(); LegacyUnit.equal($fakeCaretText[0].nodeName, '#text'); LegacyUnit.equal($fakeCaretText[0].data, Zwsp.ZWSP); CaretAsserts.assertRange(rng, CaretAsserts.createRange($fakeCaretText[0], 1)); fakeCaret.hide(); LegacyUnit.equal($(getRoot()).contents()[0].nodeName, 'SPAN'); }); suite.test('show/hide (after, inline)', function () { var rng, $fakeCaretText; $(getRoot()).html('<span>a</span>'); rng = fakeCaret.show(false, $('span', getRoot())[0]); $fakeCaretText = $(getRoot()).contents(); LegacyUnit.equal($fakeCaretText[1].nodeName, '#text'); LegacyUnit.equal($fakeCaretText[1].data, Zwsp.ZWSP); CaretAsserts.assertRange(rng, CaretAsserts.createRange($fakeCaretText[1], 1)); fakeCaret.hide(); LegacyUnit.equal($(getRoot()).contents()[0].nodeName, 'SPAN'); }); suite.test('getCss', function () { LegacyUnit.equal(fakeCaret.getCss().length > 10, true); }); suite.test('show before TD', function () { var rng; getRoot().innerHTML = '<table><tr><td contenteditable="false">x</td></tr></table>'; rng = fakeCaret.show(false, $('td', getRoot())[0]); LegacyUnit.equal(true, rng === null, 'Should be null since TD is not a valid caret target'); }); suite.test('show before TH', function () { var rng; getRoot().innerHTML = '<table><tr><th contenteditable="false">x</th></tr></table>'; rng = fakeCaret.show(false, $('th', getRoot())[0]); LegacyUnit.equal(true, rng === null, 'Should be null since TH is not a valid caret target'); }); viewBlock.attach(); setup(); Pipeline.async({}, suite.toSteps({}), function () { viewBlock.detach(); teardown(); success(); }, failure); } );