{:uriI" file:///Users/owen/.rvm/gems/ruby-2.3.0/gems/tinymce-rails-4.4.1/vendor/assets/javascripts/tinymce/themes/inlite/src/test/js/browser/core/ElementMatcher.js?type=application/javascript&pipeline=self&id=cda3cb42923bf11f685733bea943820199a10725370b25dc42df239fdf809123:ET:load_pathI"X/Users/owen/.rvm/gems/ruby-2.3.0/gems/tinymce-rails-4.4.1/vendor/assets/javascripts;T: filenameI"/Users/owen/.rvm/gems/ruby-2.3.0/gems/tinymce-rails-4.4.1/vendor/assets/javascripts/tinymce/themes/inlite/src/test/js/browser/core/ElementMatcher.js;T: nameI"Btinymce/themes/inlite/src/test/js/browser/core/ElementMatcher;T:logical_pathI"Jtinymce/themes/inlite/src/test/js/browser/core/ElementMatcher.self.js;T:content_typeI"application/javascript;T: sourceI"asynctest('browser/core/ElementMatcherTest', [ 'ephox.mcagar.api.TinyLoader', 'ephox.mcagar.api.TinyApis', 'ephox.agar.api.Step', 'ephox.agar.api.Assertions', 'tinymce/inlite/core/ElementMatcher', 'tinymce/inlite/core/PredicateId', 'ephox.agar.api.Pipeline' ], function (TinyLoader, TinyApis, Step, Assertions, ElementMatcher, PredicateId, Pipeline) { var success = arguments[arguments.length - 2]; var failure = arguments[arguments.length - 1]; var eq = function (target) { return function (elm) { return elm === target; }; }; var constantFalse = function (/*elm*/) { return false; }; var sElementTest = function (tinyApis, editor, inputHtml, selector) { return Step.sync(function () { var target, result; editor.setContent(inputHtml); target = editor.dom.select(selector)[0]; result = ElementMatcher.element(target, [ PredicateId.create('a', constantFalse), PredicateId.create('b', eq(target)) ])(editor); Assertions.assertEq(result.id, 'b', 'Should be matching B'); Assertions.assertEq(result.rect.w > 0, true, 'Should be have width'); }); }; var sParentTest = function (tinyApis, editor, inputHtml, selector) { return Step.sync(function () { var target, parents, result; editor.setContent(inputHtml); target = editor.dom.select(selector)[0]; parents = editor.dom.getParents(target); result = ElementMatcher.parent(parents, [ PredicateId.create('a', constantFalse), PredicateId.create('b', eq(parents[1])), PredicateId.create('c', eq(parents[0])) ])(editor); Assertions.assertEq(result.id, 'c', 'Should be matching C the closest one'); Assertions.assertEq(result.rect.w > 0, true, 'Should be have width'); }); }; TinyLoader.setup(function (editor, onSuccess, onFailure) { var tinyApis = TinyApis(editor); Pipeline.async({}, [ sElementTest(tinyApis, editor, '

a

', 'p'), sParentTest(tinyApis, editor, '

a

', 'em') ], onSuccess, onFailure); }, { inline: true }, success, failure); }); ;T: metadata{ :dependencieso:Set: @hash} I"environment-version;TTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"file-digest:///Users/owen/.rvm/gems/ruby-2.3.0/gems/tinymce-rails-4.4.1/vendor/assets/javascripts/tinymce/themes/inlite/src/test/js/browser/core/ElementMatcher.js;TTF: requiredo;;}F: stubbedo;;}F: linkso;;}F: charsetI" utf-8;F: digest"%kʹv'&Iv9ε[^: lengthi:dependencies_digest"%͎ܿB$f!_Ҡӓ -;|(:idI"Ecda3cb42923bf11f685733bea943820199a10725370b25dc42df239fdf809123;F: mtimel+W