Sha256: 9efdc846d2ba4686025e4cf5b4ae5e3a5ccf13c9b72af7a6d280c483e9a57fc8

Contents?: true

Size: 808 Bytes

Versions: 10

Compression:

Stored size: 808 Bytes

Contents

require 'test_helper'
ActiveValidators.activate(:regexp)

describe "Regexp Validation" do
  let(:invalid_message) { subject.errors.generate_message(:redirect_rule, :invalid) }

  subject { TestRecord.new }

  before do
    TestRecord.reset_callbacks(:validate)
    TestRecord.validates :redirect_rule, :regexp => true
  end

  it "accepts blank value" do
    subject.redirect_rule = ''

    subject.must_be :valid?
    subject.errors.must_be :empty?
  end

  it "rejects malformed regular expressions" do
    subject.redirect_rule = '['

    subject.must_be :invalid?
    subject.errors[:redirect_rule].must_include invalid_message
  end

  it "allow proper regular expressions" do
    subject.redirect_rule = '^/vanity-url(-2014)?'

    subject.must_be :valid?
    subject.errors.must_be :empty?
  end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
activevalidators-5.1.0 test/validations/regexp_test.rb
activevalidators-5.0.1 test/validations/regexp_test.rb
activevalidators-5.0.0 test/validations/regexp_test.rb
activevalidators-4.1.0 test/validations/regexp_test.rb
activevalidators-4.0.3 test/validations/regexp_test.rb
activevalidators-4.0.2 test/validations/regexp_test.rb
activevalidators-4.0.1 test/validations/regexp_test.rb
activevalidators-4.0.0 test/validations/regexp_test.rb
activevalidators-3.3.0 test/validations/regexp_test.rb
activevalidators-3.2.0 test/validations/regexp_test.rb