diff --git a/src/lib/template/array-selector.html b/src/lib/template/array-selector.html
index 5e30a7c7a8..ec3011e381 100644
--- a/src/lib/template/array-selector.html
+++ b/src/lib/template/array-selector.html
@@ -73,7 +73,8 @@
* An array containing items from which selection will be made.
*/
items: {
- type: Array
+ type: Array,
+ observer: '_resetSelection'
},
/**
@@ -99,15 +100,11 @@
*/
multi: {
type: Boolean,
- value: false
+ observer: '_resetSelection'
}
},
- observers: [
- '_itemsChanged(items, multi)'
- ],
-
- _itemsChanged: function(items, multi) {
+ _resetSelection: function() {
// Unbind previous selection
if (Array.isArray(this.selected)) {
for (var i=0; i
+Polymer({
+ is: 'observe-el',
+ observers: [
+ 'singleChanged(singleSelected.*)',
+ 'multiChanged(multiSelected.*)'
+ ],
+ singleChanged: function() {},
+ multiChanged: function() {}
+});
+
diff --git a/test/unit/array-selector.html b/test/unit/array-selector.html
new file mode 100644
index 0000000000..31ee18f2d3
--- /dev/null
+++ b/test/unit/array-selector.html
@@ -0,0 +1,218 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+