dojox
Version:
Dojo eXtensions, a rollup of many useful sub-projects and varying states of maturity – from very stable and robust, to alpha and experimental. See individual projects contain README files for details.
171 lines (147 loc) • 5.97 kB
HTML
<html>
<head>
<title>runner.robot Transitions Test</title>
<style>
@import "../../../../util/doh/robot/robot.css";
</style>
<!-- required: dojo.js -->
<script type="text/javascript" src="../../../../dojo/dojo.js" data-dojo-config="isDebug: true"></script>
<script language="JavaScript" type="text/javascript">
require([
"dojo/_base/kernel",
"dojo/ready", // dojo.ready
"doh/runner", //doh functions
"dijit/registry", // dijit.registry.byId
"dojo/_base/connect",
"dijit/robotx"
], function(kernel, ready, runner, registry, connect){
ready(function(){
runner.robot.initRobot("../test_transition-connect.html");
var reg = null;
var seq = [];
runner.register("dojox.mobile.Transitions", [
{
name: "slideIn",
timeout: 50000,
runTest: function(){
var d = new runner.Deferred();
reg = kernel.global.dijit.registry;
connect.connect(reg.byId("view1"), "onBeforeTransitionOut", null, function(moveTo, dir, transition, context, method){
seq.push("onBeforeTransitionOut1,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view1"), "onBeforeTransitionIn", null, function(moveTo, dir, transition, context, method){
seq.push("onBeforeTransitionIn1,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view1"), "onAfterTransitionOut", null, function(moveTo, dir, transition, context, method){
seq.push("onAfterTransitionOut1,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view1"), "onAfterTransitionIn", null, function(moveTo, dir, transition, context, method){
seq.push("onAfterTransitionIn1,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view2"), "onBeforeTransitionOut", null, function(moveTo, dir, transition, context, method){
seq.push("onBeforeTransitionOut2,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view2"), "onBeforeTransitionIn", null, function(moveTo, dir, transition, context, method){
seq.push("onBeforeTransitionIn2,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view2"), "onAfterTransitionOut", null, function(moveTo, dir, transition, context, method){
seq.push("onAfterTransitionOut2,"+moveTo+","+dir+","+transition);
});
connect.connect(reg.byId("view2"), "onAfterTransitionIn", null, function(moveTo, dir, transition, context, method){
seq.push("onAfterTransitionIn2,"+moveTo+","+dir+","+transition);
});
runner.robot.mouseMoveAt(reg.byId("dojox_mobile_ListItem_0").domNode, 1000);
runner.robot.mouseClick({left: true}, 500);
runner.robot.sequence(d.getTestCallback(function(){
runner.assertEqual(["onBeforeTransitionOut1,view2,1,slide",
"onBeforeTransitionIn2,view2,1,slide",
"onAfterTransitionOut1,view2,1,slide",
"onAfterTransitionIn2,view2,1,slide"], seq);
}), 1500);
return d;
}
},
{
name: "slideOut",
timeout: 50000,
runTest: function(){
var d = new runner.Deferred();
seq = [];
runner.robot.mouseMoveAt(reg.byId("dojox_mobile_ToolBarButton_0").domNode, 1000);
runner.robot.mouseClick({left: true}, 500);
runner.robot.sequence(d.getTestCallback(function(){
runner.assertEqual(["onBeforeTransitionOut2,view1,-1,slide",
"onBeforeTransitionIn1,view1,-1,slide",
"onAfterTransitionOut2,view1,-1,slide",
"onAfterTransitionIn1,view1,-1,slide"], seq);
}), 1500);
return d;
}
},
{
name: "flipIn",
timeout: 50000,
runTest: function(){
var d = new runner.Deferred();
seq = [];
runner.robot.mouseMoveAt(reg.byId("dojox_mobile_ListItem_1").domNode, 1000);
runner.robot.mouseClick({left: true}, 500);
runner.robot.sequence(d.getTestCallback(function(){
runner.assertEqual(["onBeforeTransitionOut1,view2,1,flip",
"onBeforeTransitionIn2,view2,1,flip",
"onAfterTransitionOut1,view2,1,flip",
"onAfterTransitionIn2,view2,1,flip"], seq);
}), 1500);
return d;
}
},
{
name: "slideOut2",
timeout: 50000,
runTest: function(){
var d = new runner.Deferred();
seq = [];
runner.robot.mouseMoveAt(reg.byId("dojox_mobile_ToolBarButton_0").domNode, 1000);
runner.robot.mouseClick({left: true}, 500);
runner.robot.sequence(d.getTestCallback(function(){
runner.assertEqual(["onBeforeTransitionOut2,view1,-1,slide",
"onBeforeTransitionIn1,view1,-1,slide",
"onAfterTransitionOut2,view1,-1,slide",
"onAfterTransitionIn1,view1,-1,slide"], seq);
}), 1500);
return d;
}
},
{
name: "fadeIn",
timeout: 50000,
runTest: function(){
var d = new runner.Deferred();
seq = [];
runner.robot.mouseMoveAt(reg.byId("dojox_mobile_ListItem_2").domNode, 1000);
runner.robot.mouseClick({left: true}, 500);
runner.robot.sequence(d.getTestCallback(function(){
runner.assertEqual(["onBeforeTransitionOut1,view2,1,fade",
"onBeforeTransitionIn2,view2,1,fade",
"onAfterTransitionOut1,view2,1,fade",
"onAfterTransitionIn2,view2,1,fade"], seq);
}), 2000);
return d;
}
},
{
name: "init",
runTest: function(){
runner.assertEqual(true, kernel.global._testInitCallback);
}
}
]);
runner.run();
});
});
</script>
</head>
<body />
</html>