diff --git a/src/lib/bind/accessors.html b/src/lib/bind/accessors.html index fdd93f158a..eb411f6cb3 100644 --- a/src/lib/bind/accessors.html +++ b/src/lib/bind/accessors.html @@ -23,7 +23,7 @@ _notifyChange: function(source, event, value) { value = value === undefined ? this[source] : value; event = event || Polymer.CaseMap.camelToDashCase(source) + '-changed'; - this.fire(event, {value: value}, + this.fire(event, {value: value}, {bubbles: false, cancelable: false, _useCache: true}); }, @@ -221,8 +221,8 @@ } else { // TODO(sorvell): even though we have a `value` argument, we *must* // lookup the current value of the property. Multiple listeners and - // queued events during configuration can theoretically lead to - // divergence of the passed value from the current value, but we + // queued events during configuration can theoretically lead to + // divergence of the passed value from the current value, but we // really need to track down a specific case where this happens. value = target[property]; if (!isStructured) { diff --git a/test/unit/bind-elements.html b/test/unit/bind-elements.html index 58270795e5..8b995510b6 100644 --- a/test/unit/bind-elements.html +++ b/test/unit/bind-elements.html @@ -486,3 +486,86 @@ }); + + + + + + + + + diff --git a/test/unit/bind.html b/test/unit/bind.html index 7be58b8913..455aa7a4a9 100644 --- a/test/unit/bind.html +++ b/test/unit/bind.html @@ -856,6 +856,19 @@ }); +suite('order of effects', function() { + + var el; + + setup(function() { + el = document.createElement('x-order-of-effects-parent').$.child; + }); + + test('effects are sorted', function() { + el.base = 'changed'; + }); +}); +