Skip to content

Commit

Permalink
Added more "fire" event tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Helgeson committed Feb 7, 2011
1 parent 380e90c commit 06ec7f3
Show file tree
Hide file tree
Showing 4 changed files with 109 additions and 5 deletions.
6 changes: 3 additions & 3 deletions fire/test/dom.js → fire/test/form.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
module("DOM Events");
module("Form Events");

// test each of the following events
$.each([
"focus","blur","change","scroll","resize",
"error","load","unload","submit","select"
"focus","blur","change",
"submit","select","reset"
],function( i, type ){
// test each event type
test( '"'+ type +'"', function(){
Expand Down
6 changes: 4 additions & 2 deletions fire/test/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@
<script src="../../fire/jquery.fire.js"></script>
<script src="./requirements.js"></script>
<script src="./mouse.js"></script>
<script src="./key.js"></script>
<script src="./dom.js"></script>
<script src="./touch.js"></script>
<script src="./key.js"></script>
<script src="./form.js"></script>
<script src="./object.js"></script>
<script src="./mutation.js"></script>
<script src="./custom.js"></script>
<title>ThreeDubMedia &middot; jQuery.fire.js</title>
</head>
Expand Down
52 changes: 52 additions & 0 deletions fire/test/mutation.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
module("Mutation Events");

// test each of the following events
$.each([
"DOMSubtreeModified","DOMNodeInserted",
"DOMNodeRemoved","DOMNodeRemovedFromDocument",
"DOMNodeInsertedIntoDocument","DOMAttrModified",
"DOMCharacterDataModified"
],function( i, type ){
// test each event type
test( '"'+ type +'"', function(){
expect( 0 );

// custom event properties
var props = {
//keyCode: Math.round( Math.random() * 256 ),
//charCode: Math.round( Math.random() * 256 ),
ctrlKey: Math.round( Math.random() ) ? true : false,
altKey: Math.round( Math.random() ) ? true : false,
shiftKey: Math.round( Math.random() ) ? true : false
},
// new test element
$div = $('<div/>').appendTo( document.body );
// test the document too for bubbling
$div.add( document ).bind( type, function( ev ){

equals( ev.currentTarget, this, "event.currentTarget");
equals( ev.target, $div[0], "event.target" );
equals( ev.type, type, "event.type" );

equals( ev.ctrlKey, props.ctrlKey, "event.ctrlKey" );
equals( ev.altKey, props.altKey, "event.altKey" );
equals( ev.shiftKey, props.shiftKey, "event.shiftKey" );
equals( ev.metaKey, props.metaKey, "event.metaKey" );
equals( ev.bubbles, props.bubbles, "event.bubbles" );
});

// make sure that metaKey and ctrlKey are equal
props.metaKey = props.ctrlKey;
// fire the event with bubbling
props.bubbles = true;
$div.fire( type, props );

// fire the event without bubbling
props.bubbles = false;
$div.fire( type, props );

// cleanup
$( document ).unbind( type );
$div.remove();
});
});
50 changes: 50 additions & 0 deletions fire/test/object.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
module("Object/Frame Events");

// test each of the following events
$.each([
"abort","scroll","resize",
"error","load","unload"
],function( i, type ){
// test each event type
test( '"'+ type +'"', function(){
expect( 0 );

// custom event properties
var props = {
//keyCode: Math.round( Math.random() * 256 ),
//charCode: Math.round( Math.random() * 256 ),
ctrlKey: Math.round( Math.random() ) ? true : false,
altKey: Math.round( Math.random() ) ? true : false,
shiftKey: Math.round( Math.random() ) ? true : false
},
// new test element
$div = $('<div/>').appendTo( document.body );
// test the document too for bubbling
$div.add( document ).bind( type, function( ev ){

equals( ev.currentTarget, this, "event.currentTarget");
equals( ev.target, $div[0], "event.target" );
equals( ev.type, type, "event.type" );

equals( ev.ctrlKey, props.ctrlKey, "event.ctrlKey" );
equals( ev.altKey, props.altKey, "event.altKey" );
equals( ev.shiftKey, props.shiftKey, "event.shiftKey" );
equals( ev.metaKey, props.metaKey, "event.metaKey" );
equals( ev.bubbles, props.bubbles, "event.bubbles" );
});

// make sure that metaKey and ctrlKey are equal
props.metaKey = props.ctrlKey;
// fire the event with bubbling
props.bubbles = true;
$div.fire( type, props );

// fire the event without bubbling
props.bubbles = false;
$div.fire( type, props );

// cleanup
$( document ).unbind( type );
$div.remove();
});
});

0 comments on commit 06ec7f3

Please sign in to comment.