url_validator 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -2,13 +2,12 @@ require 'bundler'
2
2
 
3
3
  require 'rubygems'
4
4
  require 'rake'
5
- require 'spec/rake/spectask'
5
+ require 'rspec/core/rake_task'
6
6
 
7
7
  Bundler::GemHelper.install_tasks
8
8
 
9
9
 
10
- Spec::Rake::SpecTask.new('spec') do |t|
11
- t.spec_opts = ['--options', "spec/spec.opts"]
12
- t.spec_files = FileList['spec/**/*_spec.rb']
10
+ RSpec::Core::RakeTask.new('spec') do |t|
11
+ t.pattern = 'spec/**/*_spec.rb'
13
12
  end
14
13
 
@@ -1,4 +1,4 @@
1
1
  module UrlValidator
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
4
4
 
data/lib/url_validator.rb CHANGED
@@ -11,11 +11,10 @@ module ActiveModel
11
11
  schemes = options[:schemes] || %w(http https)
12
12
  url_regexp = /^((#{schemes.join('|')}):\/\/){0,1}[a-z0-9]+([a-z0-9\-\.]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/ix
13
13
  preffered_schema = options[:preffered_schema] || "#{schemes.first}://"
14
-
15
14
  options[:attributes].each do |attribute|
16
15
  value = record.send(attribute).to_s
17
16
  next if value.blank? && (options[:allow_blank] || options[:allow_nil])
18
- record.send("#{attribute}=", preffered_schema << value) if !value.start_with?(*schemes)
17
+ record.send("#{attribute}=", preffered_schema + value) if !value.start_with?(*schemes)
19
18
  normalized_value = record.send("#{attribute}_normalized")
20
19
  begin
21
20
  uri = Addressable::URI.parse(value)
@@ -1,3 +1,5 @@
1
+ # coding: utf-8
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  describe "User" do
@@ -123,6 +125,15 @@ describe "User" do
123
125
  @user.should be_valid
124
126
  @user.errors[:website].should be_empty
125
127
  end
128
+
129
+ it "should return correct data" do
130
+ @user.website = "website.com"
131
+ @user.url = "website.com/blog"
132
+ @user.should be_valid
133
+ @user.website.should == "http://website.com"
134
+ @user.url.should == "http://website.com/blog"
135
+ end
136
+
126
137
  end
127
138
 
128
139
  context "with ActiveRecord" do
@@ -222,7 +233,7 @@ describe "User" do
222
233
 
223
234
  it "should show correct message" do
224
235
  @user.valid?
225
- @user.errors[:website].to_s.should == 'bad bad URL'
236
+ @user.errors[:website].join.should == 'bad bad URL'
226
237
  end
227
238
  end
228
239
 
@@ -233,7 +244,7 @@ describe "User" do
233
244
 
234
245
  it "should show correct message" do
235
246
  @user.valid?
236
- @user.errors[:website].to_s.should == 'is not a valid URL'
247
+ @user.errors[:website].join.should == 'is not a valid URL'
237
248
  end
238
249
  end
239
250
 
@@ -1,7 +1,7 @@
1
1
  class User
2
2
  include ActiveModel::Validations
3
3
 
4
- attr_accessor :website, :url
4
+ attr_accessor :website
5
5
 
6
6
  validates_url :website, :message => 'bad bad URL'
7
7
  end
@@ -1,8 +1,8 @@
1
1
  class UserWithBlank
2
2
  include ActiveModel::Validations
3
3
 
4
- attr_accessor :website
4
+ attr_accessor :website, :url
5
5
 
6
- validates_url :website, :allow_blank => true
6
+ validates_url :website, :url, :allow_blank => true
7
7
  end
8
8
 
data/spec/spec_helper.rb CHANGED
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(File.dirname(__FILE__) + '/resources')
3
3
  $LOAD_PATH.unshift(File.dirname(__FILE__))
4
4
 
5
5
  require 'rubygems'
6
- require 'spec'
6
+ require 'rspec'
7
7
  require 'sqlite3'
8
8
  require 'active_record'
9
9
  require 'active_record/base'
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
15
15
  s.rubyforge_project = "url_validator"
16
16
 
17
17
  s.add_development_dependency "rspec"
18
- s.add_development_dependency "ruby-debug"
18
+ s.add_development_dependency "ruby-debug19"
19
19
  s.add_development_dependency "sqlite3"
20
20
  s.add_dependency "rails", "~>3.0.1"
21
21
  s.add_dependency "addressable"
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: url_validator
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 0
9
- - 4
10
- version: 0.0.4
4
+ prerelease:
5
+ version: 0.0.5
11
6
  platform: ruby
12
7
  authors:
13
8
  - Zdenko Nevrala
@@ -15,7 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2011-05-03 00:00:00 +02:00
13
+ date: 2011-05-09 00:00:00 +02:00
19
14
  default_executable:
20
15
  dependencies:
21
16
  - !ruby/object:Gem::Dependency
@@ -26,23 +21,17 @@ dependencies:
26
21
  requirements:
27
22
  - - ">="
28
23
  - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
24
  version: "0"
33
25
  type: :development
34
26
  version_requirements: *id001
35
27
  - !ruby/object:Gem::Dependency
36
- name: ruby-debug
28
+ name: ruby-debug19
37
29
  prerelease: false
38
30
  requirement: &id002 !ruby/object:Gem::Requirement
39
31
  none: false
40
32
  requirements:
41
33
  - - ">="
42
34
  - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
35
  version: "0"
47
36
  type: :development
48
37
  version_requirements: *id002
@@ -54,9 +43,6 @@ dependencies:
54
43
  requirements:
55
44
  - - ">="
56
45
  - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
46
  version: "0"
61
47
  type: :development
62
48
  version_requirements: *id003
@@ -68,11 +54,6 @@ dependencies:
68
54
  requirements:
69
55
  - - ~>
70
56
  - !ruby/object:Gem::Version
71
- hash: 5
72
- segments:
73
- - 3
74
- - 0
75
- - 1
76
57
  version: 3.0.1
77
58
  type: :runtime
78
59
  version_requirements: *id004
@@ -84,9 +65,6 @@ dependencies:
84
65
  requirements:
85
66
  - - ">="
86
67
  - !ruby/object:Gem::Version
87
- hash: 3
88
- segments:
89
- - 0
90
68
  version: "0"
91
69
  type: :runtime
92
70
  version_requirements: *id005
@@ -130,23 +108,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
130
108
  requirements:
131
109
  - - ">="
132
110
  - !ruby/object:Gem::Version
133
- hash: 3
134
- segments:
135
- - 0
136
111
  version: "0"
137
112
  required_rubygems_version: !ruby/object:Gem::Requirement
138
113
  none: false
139
114
  requirements:
140
115
  - - ">="
141
116
  - !ruby/object:Gem::Version
142
- hash: 3
143
- segments:
144
- - 0
145
117
  version: "0"
146
118
  requirements: []
147
119
 
148
120
  rubyforge_project: url_validator
149
- rubygems_version: 1.3.7
121
+ rubygems_version: 1.6.2
150
122
  signing_key:
151
123
  specification_version: 3
152
124
  summary: URL validator