PHP Classes

File: public/js/tinymce/src/plugins/image/src/test/js/browser/FigureResizeTest.js

Recommend this page to a friend!
  Classes of Abed Nego Ragil Putra   GoLavaCMS   public/js/tinymce/src/plugins/image/src/test/js/browser/FigureResizeTest.js   Download  
File: public/js/tinymce/src/plugins/image/src/test/js/browser/FigureResizeTest.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,305 bytes
 

Contents

Class file image Download
asynctest( 'browser.tinymce.plugins.image.FigureResizeTest', [ 'ephox.agar.api.Chain', 'ephox.agar.api.NamedChain', 'ephox.agar.api.Guard', 'ephox.agar.api.Assertions', 'ephox.agar.api.Mouse', 'ephox.agar.api.Pipeline', 'ephox.agar.api.UiFinder', 'ephox.mcagar.api.TinyDom', 'ephox.mcagar.api.Editor', 'ephox.mcagar.api.ApiChains', 'ephox.mcagar.api.UiChains', 'tinymce.plugins.image.Plugin', 'tinymce.themes.modern.Theme' ], function (Chain, NamedChain, Guard, Assertions, Mouse, Pipeline, UiFinder, TinyDom, Editor, ApiChains, UiChains, ImagePlugin, ModernTheme) { var success = arguments[arguments.length - 2]; var failure = arguments[arguments.length - 1]; ModernTheme(); ImagePlugin(); var cGetBody = Chain.mapper(function (editor) { return TinyDom.fromDom(editor.getBody()); }); var cGetElementSize = Chain.mapper(function (elm) { var elmStyle = elm.dom().style; return { w: elmStyle.width, h: elmStyle.height }; }); var cDragHandleRight = function (px) { return Chain.op(function (input) { var dom = input.editor.dom; var target = input.resizeSE.dom(); var pos = dom.getPos(target); dom.fire(target, 'mousedown', { screenX: pos.x, screenY: pos.y }); dom.fire(target, 'mousemove', { screenX: pos.x + px, screenY: pos.y }); dom.fire(target, 'mouseup'); }); }; Pipeline.async({}, [ Chain.asStep({}, [ Editor.cFromSettings({ plugins: 'image', toolbar: 'image', indent: false, image_caption: true, height: 400, skin_url: '/project/src/skins/lightgray/dist/lightgray' }), UiChains.cClickOnToolbar('click image button', 'div[aria-label="Insert/edit image"]'), UiChains.cFillActiveDialog({ src: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7', width: 100, height: 100, caption: true }), UiChains.cSubmitDialog(), NamedChain.asChain([ NamedChain.direct(NamedChain.inputName(), Chain.identity, 'editor'), NamedChain.direct('editor', cGetBody, 'editorBody'), // click the image, but expect the handles on the figure NamedChain.direct('editorBody', UiFinder.cFindIn('figure > img'), 'img'), NamedChain.direct('img', Mouse.cTrueClick, '_'), NamedChain.direct(NamedChain.inputName(), ApiChains.cAssertSelection([], 0, [], 1), '_'), NamedChain.direct('editorBody', Chain.control( UiFinder.cFindIn('#mceResizeHandlese'), Guard.tryUntil('wait for resize handlers', 100, 40000) ), '_'), // actually drag the handle to the right NamedChain.direct('editorBody', UiFinder.cFindIn('#mceResizeHandlese'), 'resizeSE'), NamedChain.write('_', cDragHandleRight(100)), NamedChain.direct('img', cGetElementSize, 'imgSize'), NamedChain.direct('imgSize', Assertions.cAssertEq('asserting image size after resize', { w: '200px', h: '200px' }), '_'), NamedChain.output('editor') ]), Editor.cRemove ]) ], function () { success(); }, failure); } );