Rspec / shoulda: testing, that a custom validator is called
I have a custom validator (located in app/validators/uri_validator.rb) which is used in: validates :link, uri: true How do I specify this in my specs? Ideally I would like to have a one-line call, such as: it { should validate_uri_of(:link) } How do I do this? Another option is to use the allow_value matcher, although not ideal it can work in some circumstances. it { should allow_value(value_which_is_valid).for(:link) } it { should_not allow_value(value_which_is_invalid).for(:link) } Use factory girl to build a model object with invalid data and one with valid data and call the be_valid