Skip to content

Commit

Permalink
Fixes the order of .on to onEvent, addEventListener, onKeyValue
Browse files Browse the repository at this point in the history
  • Loading branch information
justinbmeyer committed Dec 6, 2018
1 parent 26dd60a commit aa06912
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 6 deletions.
33 changes: 33 additions & 0 deletions map/map-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -402,3 +402,36 @@ test("listenTo and stopListening takes a queueName", function(){
CALLS = [];

});

QUnit.test("on goes onEvent, addEventListener, then onKeyValue", function(){
var called = [];
var fullSet = canReflect.assignSymbols({
addEventListener: function(){
called.push("addEventListener");
}
},{
"can.onEvent": function(){
called.push("onEvent");
},
'can.onKeyValue': function(){
called.push("onKeyValue");
}
})
eventQueue.on.call(fullSet, "event", function(){});

QUnit.deepEqual(called, ["onEvent"]);

called = [];
var addEvent = canReflect.assignSymbols({
addEventListener: function(){
called.push("addEventListener");
}
},{
'can.onKeyValue': function(){
called.push("onKeyValue");
}
})
eventQueue.on.call(addEvent, "event", function(){});

QUnit.deepEqual(called, ["addEventListener"]);
});
12 changes: 6 additions & 6 deletions map/map.js
Original file line number Diff line number Diff line change
Expand Up @@ -548,12 +548,12 @@ var props = {
domEvents.addEventListener(this, eventName, handler, queue);
}
} else {
if ("addEventListener" in this) {
if (this[onEventSymbol]) {
this[onEventSymbol](eventName, handler, queue);
} else if ("addEventListener" in this) {
this.addEventListener(eventName, handler, queue);
} else if (this[onKeyValueSymbol]) {
canReflect.onKeyValue(this, eventName, handler, queue);
} else if (this[onEventSymbol]) {
this[onEventSymbol](eventName, handler, queue);
} else {
if (!eventName && this[onValueSymbol]) {
canReflect.onValue(this, handler, queue);
Expand Down Expand Up @@ -593,12 +593,12 @@ var props = {
domEvents.removeEventListener(this, eventName, handler, queue);
}
} else {
if ("removeEventListener" in this) {
if (this[offEventSymbol]) {
this[offEventSymbol](eventName, handler, queue);
} else if ("removeEventListener" in this) {
this.removeEventListener(eventName, handler, queue);
} else if (this[offKeyValueSymbol]) {
canReflect.offKeyValue(this, eventName, handler, queue);
} else if (this[offEventSymbol]) {
this[offEventSymbol](eventName, handler, queue);
} else {
if (!eventName && this[offValueSymbol]) {
canReflect.offValue(this, handler, queue);
Expand Down

0 comments on commit aa06912

Please sign in to comment.