diff --git a/tests/test_Events.html b/tests/test_Events.html index cc3d0f4f33..862712c4f3 100644 --- a/tests/test_Events.html +++ b/tests/test_Events.html @@ -41,7 +41,7 @@ function test_02_Events_register_unregister(t) { - t.plan( 15 ); + t.plan( 18 ); var mapDiv = $('map'); var obj = {result: 0}; @@ -105,8 +105,21 @@ } t.ok( (listenerList.length == 1) && !found, "unregister correctly removes callback when no obj specified" ); + var func4 = function () { this.result = "chicken"; } + events.unregister("doThingA", obj, func4); + t.ok( (listenerList.length == 1), "unregister does not bomb if you try to remove an unregistered callback" ); + + var obj2 = { chicken: 151 }; + events.unregister("doThingA", obj2, func2); + t.ok( (listenerList.length == 1), "unregister does not bomb or accidntally remove if you try to remove a valid callback on a valid event type, but with the wrong context object" ); + + events.unregister("doThingA", obj, null); + t.ok( (listenerList.length == 1), "unregister does not bomb if you try to remove a null callback" ); + events.unregister("chicken", null, func3); t.ok( events.listeners["chicken"] == null, "unregistering an event that is not enabled does not wierdly enable it -- or cause a script error") + + } function test_03_Events_remove(t) {