Sha256: a6aab87a4166cb89fc0f372c52ee05c5cfc9faa5b8c2751c144a91101e0db533
Contents?: true
Size: 1.51 KB
Versions: 5
Compression:
Stored size: 1.51 KB
Contents
require 'test_helper.rb' describe "Url Validation" do def build_url_record TestRecord.reset_callbacks(:validate) TestRecord.validates :url, :url => true TestRecord.new end describe "valid urls" do it "accepts urls without port number" do subject = build_url_record subject.url = 'http://www.verrot.fr' subject.valid?.must_equal true subject.errors.size.must_equal 0 end it "accepts urls with port number" do subject = build_url_record subject.url = 'http://www.verrot.fr:1234' subject.valid?.must_equal true subject.errors.size.must_equal 0 end it "accepts urls with basic auth" do subject = build_url_record subject.url = 'http://foo:bar@www.verrot.fr' subject.valid?.must_equal true subject.errors.size.must_equal 0 end it "accepts valid SSL urls" do subject = build_url_record subject.url = 'https://www.verrot.fr' subject.valid?.must_equal true subject.errors.size.must_equal 0 end end describe "for invalid urls" do it "rejects invalid urls" do subject = build_url_record subject.url = 'http://^^^^.fr' subject.valid?.must_equal false subject.errors.size.must_equal 1 end it "generates an error message of type invalid" do subject = build_url_record subject.url = 'http://^^^^.fr' subject.valid?.must_equal false subject.errors[:url].include?(subject.errors.generate_message(:url, :invalid)).must_equal true end end end
Version data entries
5 entries across 5 versions & 1 rubygems