Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<html>
<head>
<script type="text/javascript" src="../MochiKit/Base.js"></script>
<script type="text/javascript" src="../MochiKit/Iter.js"></script>
<script type="text/javascript" src="../MochiKit/DOM.js"></script>
<script type="text/javascript" src="../MochiKit/Async.js"></script>
<script type="text/javascript" src="../MochiKit/Style.js"></script>
<script type="text/javascript" src="../MochiKit/Color.js"></script>
<script type="text/javascript" src="../MochiKit/Signal.js"></script>
<script type="text/javascript" src="../MochiKit/Position.js"></script>
<script type="text/javascript" src="../MochiKit/Visual.js"></script>
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="SimpleTest/test.css">
<style type="text/css">
#elt1, #elt2, #ctn1 {
visibility: hidden;
font-size: 1em;
margin: 2px;
}
#elt3 {
display: none;
}
#ctn1 {
height: 2px;
}
</style>
</head>
<body>
<div id='elt1'>elt1</div>
<div id='ctn1'><div id='elt2'></div></div>
<div id='elt3'>elt3</div>
<pre id="test">
<script type="text/javascript">
try {
var TestQueue = function () {
};
TestQueue.prototype = new MochiKit.Visual.ScopedQueue();
MochiKit.Base.update(TestQueue.prototype, {
startLoop: function (func, interval) {
this.started = true;
var timePos = new Date().getTime();
while (this.started) {
timePos += interval;
MochiKit.Base.map(function (effect) {
effect.loop(timePos);
}, this.effects);
}
},
stopLoop: function () {
this.started = false;
}
});
var gl = new TestQueue();
MochiKit.Visual.Queues.instances['global'] = gl;
MochiKit.Visual.Queues.instances['elt1'] = gl;
MochiKit.Visual.Queues.instances['elt2'] = gl;
MochiKit.Visual.Queues.instances['elt3'] = gl;
MochiKit.Visual.Queues.instances['ctn1'] = gl;
MochiKit.Visual.Queue = gl;
pulsate("elt1", {afterFinish: function () {
is(getElement('elt1').style.display != 'none', true, "pulsate ok");
}});
pulsate("elt1", {pulses: 2, afterFinish: function () {
is(getElement('elt1').style.display != 'none', true, "pulsate with numbered pulses ok");
}});
shake("elt1", {afterFinish: function () {
is(getElement('elt1').style.display != 'none', true, "shake ok");
}});
fade("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "fade ok");
}});
appear("elt1", {afterFinish: function () {
is(getElement('elt1').style.display != 'none', true, "appear ok");
}});
toggle("elt1", "size", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "toggle size ok");
}});
toggle("elt1", "size", {afterFinish: function () {
is(getElement('elt1').style.display != 'none', true, "toggle size reverse ok");
}});
Morph("elt1", {"style": {"font-size": "2em"}, afterFinish: function () {
is(getStyle("elt1", "font-size"), "2em", "Morph OK");
}});
Morph("elt1", {"style": {"font-size": "1em", "margin-left": "4px"}, afterFinish: function () {
is(getStyle("elt1", "font-size"), "1em", "Morph multiple (font) OK");
is(getStyle("elt1", "margin-left"), "4px", "Morph multiple (margin) OK");
}});
Morph("elt1", {"style": {"font-style": "italic"}, afterFinish: function () {
is(getStyle("elt1", "font-style"), "italic", "Morph generic property OK");
}});
switchOff("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "switchOff ok");
}});
grow("elt1", {afterFinish: function () {
is(getElement('elt1').style.display != 'none', true, "grow ok");
}});
shrink("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "shrink ok");
}});
showElement('elt1');
dropOut("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "dropOut ok");
}});
showElement('elt1');
puff("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "puff ok");
}});
showElement('elt1');
fold("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "fold ok");
}});
showElement('elt1');
squish("elt1", {afterFinish: function () {
is(getElement('elt1').style.display, 'none', "squish ok");
}});
slideUp("ctn1", {afterFinish: function () {
is(getElement('ctn1').style.display, 'none', "slideUp ok");
}});
slideDown("ctn1", {afterFinish: function () {
is(getElement('ctn1').style.display != 'none', true, "slideDown ok");
}});
blindDown("ctn1", {afterFinish: function () {
is(getElement('ctn1').style.display != 'none', true, "blindDown ok");
}});
blindUp("ctn1", {afterFinish: function () {
is(getElement('ctn1').style.display, 'none', "blindUp ok");
}});
multiple(["elt1", "ctn1"], appear, {afterFinish: function (effect) {
is(effect.element.style.display != 'none', true, "multiple ok");
}});
toggle("elt3", "size", {afterFinish: function () {
is(getElement('elt3').style.display != 'none', true, "toggle with css ok");
}});
toggle("elt3", "size", {afterFinish: function () {
is(getElement('elt3').style.display, 'none', "toggle with css ok");
}});
var toTests = [roundElement, roundClass, tagifyText, Opacity, Move, Highlight, ScrollTo, Morph];
for (var m in toTests) {
toTests[m]("elt1");
ok(true, toTests[m].NAME + " doesn't need 'new' keyword");
}
Scale("elt1", 1);
ok(true, "Scale doesn't need 'new' keyword");
ok(true, "visual suite finished");
} catch (err) {
var s = "test suite failure!\n";
var o = {};
var k = null;
for (k in err) {
// ensure unique keys?!
if (!o[k]) {
s += k + ": " + err[k] + "\n";
o[k] = err[k];
}
}
ok ( false, s );
SimpleTest.finish();
}
</script>
</pre>
</body>
</html>