url_validator 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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