diff --git a/iron-validatable-behavior.html b/iron-validatable-behavior.html
index c59c47e..a264668 100644
--- a/iron-validatable-behavior.html
+++ b/iron-validatable-behavior.html
@@ -91,7 +91,11 @@
* @return {boolean} True if `values` is valid.
*/
validate: function(values) {
- var valid = this._validator && this._validator.validate(values);
+ var valid = true;
+ if (this.hasValidator()) {
+ valid = this._validator.validate(values);
+ }
+
this.invalid = !valid;
return valid;
}
diff --git a/test/iron-validatable-behavior.html b/test/iron-validatable-behavior.html
index 435c034..847a3f8 100644
--- a/test/iron-validatable-behavior.html
+++ b/test/iron-validatable-behavior.html
@@ -45,6 +45,12 @@
assert.isFalse(node.hasAttribute('aria-invalid'), 'aria-invalid is unset');
});
+ test('validate() is true if a validator isn\'t set', function() {
+ var node = fixture('basic');
+ var valid = node.validate();
+ assert.isTrue(valid);
+ });
+
});