sample skeleton application with dojo toolkit & arcgis js api v 4.30
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

152 lines
4.9 KiB

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>doh.robot TabIndent Test</title>
<style>
@import "../../../../util/doh/robot/robot.css";
</style>
<script type="text/javascript" src="../../../../dojo/dojo.js"></script>
<script type="text/javascript">
require([
"doh/runner", "dojo/robotx",
"dojo/dom", "dojo/keys", "dojo/query", "dojo/window",
"dijit/tests/helpers", "dojo/domReady!"
], function(doh, robot, dom, keys, query, winUtils, helpers){
robot.initRobot('../test_TabIndent.html');
var metaKey = {ctrl: true};
var registry;
doh.register("setup", [
{
name: "wait for editors to load",
timeout: 5000,
runTest: helpers.waitForLoad
},
function setVars(){
registry = robot.window.require("dijit/registry");
}
]);
doh.register("testTabIndent", [
{
name: "toggleOn",
timeout: 6000,
runTest: function(){
var d = new doh.Deferred();
var editor = registry.byId("tiTest");
robot.sequence(d.getTestErrback(function(){
editor.setValue("<ol><li>a list item.</li><li>a list item2.</li></ol>");
}),500);
robot.mouseMoveAt(query(".dijitEditorIconTabIndent", robot.doc)[0], 1000);
robot.mouseClick({left: true}, 500);
robot.mouseMoveAt(function(){ return editor.editNode }, 500);
robot.mouseClick({left: true}, 500);
robot.keyPress(keys.DOWN_ARROW, 500); //make sure the last thing in the list is selected
robot.keyPress(keys.TAB, 500);
robot.sequence(d.getTestCallback(function(){
doh.is("<ol><li>a list item.</li><ol><li>a list item2.</li></ol></ol>", editor.getValue());
}), 1000);
return d;
}
},
{
name: "shiftTab",
timeout: 2000,
runTest: function(){
var d = new doh.Deferred();
var editor = registry.byId("tiTest");
robot.keyPress(keys.TAB, 500, {shift: true});
robot.sequence(d.getTestCallback(function(){
var editorValue = editor.getValue();
var valid = editorValue === "<ol><li>a list item.</li><li>a list item2.<br /></li></ol>"; //chrome
valid = valid || editorValue === "<ol><li>a list item.</li><li>a list item2.<br/></li></ol>"; //safari
valid = valid || editorValue === "<ol><li>a list item.</li><li>a list item2.</li></ol>"; //everone else
doh.t(valid);
}), 1000);
return d;
}
},
{
name: "toggleOff",
timeout: 6000,
runTest: function(){
var d = new doh.Deferred();
var editor = registry.byId("tiTest");
var origValue;
robot.sequence(d.getTestErrback(function(){ origValue = editor.getValue(); }), 1000);
robot.mouseMoveAt(query(".dijitEditorIconTabIndent", robot.doc)[0], 1000);
robot.mouseClick({left: true}, 500);
robot.mouseMoveAt(editor.editNode, 500);
robot.mouseClick({left: true}, 500);
robot.keyPress(keys.TAB, 500);
robot.sequence(d.getTestCallback(function(){
//verify the editor lost focus and therefore the value did not change
doh.is(origValue, editor.getValue());
}), 1000);
return d;
}
},
{
name: "toggleOn_ctrlM",
timeout: 6000,
runTest: function(){
var d = new doh.Deferred();
var editor = registry.byId("tiTest");
robot.mouseMoveAt(function(){ return editor.editNode }, 500);
robot.mouseClick({left: true}, 500);
robot.keyPress("m", 500, {ctrl: true});
robot.mouseMoveAt(function(){ return editor.editNode }, 500);
robot.mouseClick({left: true}, 500);
robot.keyPress(keys.DOWN_ARROW, 500); //make sure the last thing in the list is selected
robot.keyPress(keys.TAB, 500);
robot.sequence(d.getTestCallback(function(){
doh.is("<ol><li>a list item.</li><ol><li>a list item2.</li></ol></ol>", editor.getValue());
}), 1000);
return d;
}
},
{
name: "toggleOff_ctrlM",
timeout: 6000,
runTest: function(){
var d = new doh.Deferred();
var editor = registry.byId("tiTest");
var origValue;
robot.sequence(d.getTestErrback(function(){ origValue = editor.getValue(); }), 1000);
robot.mouseMoveAt(function(){ return editor.editNode }, 500);
robot.mouseClick({left: true}, 500);
robot.keyPress("m", 500, {ctrl: true});
robot.mouseMoveAt(function(){ return editor.editNode }, 500);
robot.mouseClick({left: true}, 500);
robot.keyPress(keys.TAB, 500);
robot.sequence(d.getTestCallback(function(){
//verify the editor lost focus and therefore the value did not change
doh.is(origValue, editor.getValue());
}), 1000);
return d;
}
}
]);
doh.run();
});
</script>
</head>
</html>