PHP Classes

File: public/js/tinymce/src/core/src/test/js/browser/util/DelayTest.js

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

Contents

Class file image Download
asynctest( 'browser.tinymce.core.util.DelayTest', [ 'ephox.mcagar.api.LegacyUnit', 'ephox.agar.api.Pipeline', 'tinymce.core.util.Delay' ], function (LegacyUnit, Pipeline, Delay) { var success = arguments[arguments.length - 2]; var failure = arguments[arguments.length - 1]; var suite = LegacyUnit.createSuite(); var ok = function (value, label) { return LegacyUnit.equal(value, true, label); }; suite.asyncTest('requestAnimationFrame', function (_, done) { Delay.requestAnimationFrame(function () { ok(true, "requestAnimationFrame was executed."); done(); }); }); suite.asyncTest('setTimeout', function (_, done) { Delay.setTimeout(function () { ok(true, "setTimeout was executed."); done(); }); }); suite.asyncTest('setInterval', function (_, done) { var count = 0, id; id = Delay.setInterval(function () { if (++count === 2) { Delay.clearInterval(id); LegacyUnit.equal(count, 2); done(); } else if (count > 3) { throw new Error("Still executing setInterval."); } }); }); suite.asyncTest('setEditorTimeout', function (_, done) { var fakeEditor = {}; Delay.setEditorTimeout(fakeEditor, function () { ok(true, "setEditorTimeout was executed."); done(); }); }); suite.test('setEditorTimeout (removed)', function () { var fakeEditor = { removed: true }; Delay.setEditorTimeout(fakeEditor, function () { throw new Error("Still executing setEditorTimeout."); }); ok(true, "setEditorTimeout on removed instance."); }); suite.asyncTest('setEditorInterval', function (_, done) { var count = 0, id, fakeEditor = {}; id = Delay.setEditorInterval(fakeEditor, function () { if (++count === 2) { Delay.clearInterval(id); LegacyUnit.equal(count, 2); done(); } else if (count > 3) { throw new Error("Still executing setEditorInterval."); } }); }); suite.test('setEditorInterval (removed)', function () { var fakeEditor = { removed: true }; Delay.setEditorInterval(fakeEditor, function () { throw new Error("Still executing setEditorInterval."); }); ok(true, "setEditorTimeout on removed instance."); }); suite.asyncTest('throttle', function (_, done) { var fn, args = []; fn = Delay.throttle(function (a) { args.push(a); }, 0); fn(1); fn(2); Delay.setTimeout(function () { LegacyUnit.deepEqual(args, [2]); done(); }, 10); }); suite.asyncTest('throttle stop', function (_, done) { var fn, args = []; fn = Delay.throttle(function (a) { args.push(a); }, 0); fn(1); fn.stop(); Delay.setTimeout(function () { LegacyUnit.deepEqual(args, []); done(); }, 10); }); suite.test('clearTimeout', function () { var id; id = Delay.setTimeout(function () { throw new Error("clearTimeout didn't work."); }); Delay.clearTimeout(id); ok(true, "clearTimeout works."); }); suite.test('clearTimeout', function () { var id; id = Delay.setInterval(function () { throw new Error("clearInterval didn't work."); }); Delay.clearInterval(id); ok(true, "clearInterval works."); }); Pipeline.async({}, suite.toSteps({}), function () { success(); }, failure); } );