Files
openlayers/master/examples/test_dnd_dndFromDojo.html
Éric Lemoine 5d14b9e2d4 Updated
2013-02-20 10:38:25 +01:00

161 lines
5.0 KiB
HTML

<html>
<head>
<title>Robot - Adapter - DndFromDojo</title>
<script type="text/javascript"
src="../../../../dojo/dojo.js"
djConfig="isDebug: true">
</script>
<script type="text/javascript">
dojo.require("dijit.robotx");
dojo.addOnLoad(function(){
doh.robot.initRobot('../functionalTests/test_dnd_dndFromDojo.html');
doh.register("test_dnd_dndFromDojo",
[
{
name: "dndFromPureSource",
timeout:6000,
runTest: function(){
// Moves an item from a dojo source to a dojox
// target.
var d = new doh.Deferred();
var itemType1 = dojo.query("#dojoPureSource > [dndType*=type1]")[0];
var area = dojo.query(".dndArea")[0];
var sizeArea = area.childNodes.length
doh.robot.mouseMoveAt(itemType1, 100);
doh.robot.mousePress({left:true}, 100);
doh.robot.mouseMoveAt(area, 100);
doh.robot.mouseRelease({left:true}, 100);
doh.robot.sequence(function(){
try{
doh.assertEqual(area.childNodes.length ,sizeArea + 1, "A child should be drop in the dojox area.");
d.callback(true);
}
catch(e){
d.errback(e);
}
}, 100);
return d;
}
},
{
name: "dndFromDojoSource",
timeout:10000,
runTest: function(){
// Moves an item from a dojo source/target to a
// dojox target.
var d = new doh.Deferred();
var itemType1 = dojo.query("#dojoSource > [dndType*=type1]")[0];
var area = dojo.query(".dndArea")[0];
var sizeArea = area.childNodes.length
doh.robot.mouseMoveAt(itemType1, 200);
doh.robot.mousePress({left:true}, 200);
doh.robot.mouseMoveAt(area, 200);
doh.robot.mouseRelease({left:true}, 200);
doh.robot.sequence(function(){
try{
doh.assertEqual(area.childNodes.length ,sizeArea + 1, "A child should be drop in the dojox area.");
d.callback(true);
}
catch(e){
d.errback(e);
}
}, 200);
return d;
}
},
{
name: "dndAcceptanceFromPureSource",
timeout:10000,
runTest: function(){
// Tries to move an item from a dojo source to a
// dojox areas :
// - Item's type : 2
// - Drop area accept types : 1
// -> In this case, drop is refused
var d = new doh.Deferred();
var itemType2 = dojo.query("#dojoPureSource > [dndType*=type2]")[0];
var area = dojo.query(".dndArea")[0];
var sizeArea = area.childNodes.length
doh.robot.mouseMoveAt(itemType2, 200);
doh.robot.mousePress({left:true}, 200);
doh.robot.mouseMoveAt(area, 200);
doh.robot.mouseRelease({left:true}, 200);
doh.robot.sequence(function(){
try{
doh.assertEqual(area.childNodes.length ,sizeArea, "A type 2 item should not be drop in the dojox area.");
d.callback(true);
}
catch(e){
d.errback(e);
}
}, 200);
return d;
}
},
{
name: "dndAcceptanceFromDojoSource",
timeout:10000,
runTest: function(){
// Tries to move an item from a dojo source/target
// to a dojox area :
// - Item's type : 2
// - Drop area accept types : 1
// -> In this case, drop is refused
var d = new doh.Deferred();
var itemType2 = dojo.query("#dojoSource > [dndType*=type2]")[0];
var area = dojo.query(".dndArea")[0];
var sizeArea = area.childNodes.length
doh.robot.mouseMoveAt(itemType2, 200);
doh.robot.mousePress({left:true}, 200);
doh.robot.mouseMoveAt(area, 200);
doh.robot.mouseRelease({left:true}, 200);
doh.robot.sequence(function(){
try{
doh.assertEqual(area.childNodes.length ,sizeArea, "A type 2 item should not be drop in the dojox area.");
d.callback(true);
}
catch(e){
d.errback(e);
}
}, 200);
doh.robot.mouseRelease({left:true}, 200);
return d;
}
}
]
);
doh.run();
});
</script>
<style type="text/css"></style>
</head>
<body>
</body>
</html>