Shoulda/RSpec matchers - conditional validation Shoulda/RSpec matchers - conditional validation ruby ruby

Shoulda/RSpec matchers - conditional validation


It doesn't appear that shoulda_matchers does this, but it's easy enough to write it yourself::

  context "if eligible" do    before { allow(subject).to receive(:eligible?).and_return(true) }    it { should validate_presence_of(:name) }  end  context "if ineligible" do    before { allow(subject).to receive(:eligible?).and_return(false) }    it { should_not validate_presence_of(:name) }  end