phony_rails 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -42,7 +42,7 @@ In your views use:
42
42
 
43
43
  ## Changelog
44
44
 
45
- 0.1.3
45
+ 0.1.5
46
46
  * some tests and a helper method by ddidier.
47
47
 
48
48
  0.1.2
@@ -1,3 +1,3 @@
1
1
  module PhonyRails
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
@@ -9,4 +9,16 @@ class PhonyPlausibleValidator < ActiveModel::EachValidator
9
9
  record.errors[attribute] << (options[:message] || "is an invalid number") if not Phony.plausible?(value)
10
10
  end
11
11
 
12
- end
12
+ end
13
+
14
+ module ActiveModel
15
+ module Validations
16
+ module HelperMethods
17
+
18
+ def validates_plausible_phone(*attr_names)
19
+ validates_with PhonyPlausibleValidator, _merge_attributes(attr_names)
20
+ end
21
+
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,60 @@
1
+ require 'spec_helper'
2
+
3
+ ActiveRecord::Schema.define do
4
+ create_table :validating_homes do |table|
5
+ table.column :phone_number, :string
6
+ table.column :fax_number, :string
7
+ end
8
+ end
9
+
10
+ class ValidatingHome < ActiveRecord::Base
11
+ attr_accessor :phone_method, :fax_number
12
+ validates :phone_number, :phony_plausible => true
13
+ validates_plausible_phone :fax_number
14
+ end
15
+
16
+
17
+
18
+ describe PhonyPlausibleValidator do
19
+
20
+ describe 'validates' do
21
+ before(:each) do
22
+ @home = ValidatingHome.new
23
+ end
24
+
25
+ it "should validate an empty number" do
26
+ @home.should be_valid
27
+ end
28
+
29
+ it "should validate a valid number" do
30
+ @home.phone_number = '123456789'
31
+ @home.should be_valid
32
+ end
33
+
34
+ it "should invalidate an invalid number" do
35
+ @home.phone_number = '123456789 123456789 123456789 123456789'
36
+ @home.should_not be_valid
37
+ end
38
+ end
39
+
40
+ describe 'validates_plausible_phone' do
41
+ before(:each) do
42
+ @home = ValidatingHome.new
43
+ end
44
+
45
+ it "should validate an empty number" do
46
+ @home.should be_valid
47
+ end
48
+
49
+ it "should validate a valid number" do
50
+ @home.fax_number = '123456789'
51
+ @home.should be_valid
52
+ end
53
+
54
+ it "should invalidate an invalid number" do
55
+ @home.fax_number = '123456789 123456789 123456789 123456789'
56
+ @home.should_not be_valid
57
+ end
58
+ end
59
+
60
+ end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 4
9
- version: 0.1.4
8
+ - 5
9
+ version: 0.1.5
10
10
  platform: ruby
11
11
  authors:
12
12
  - Joost Hietbrink
@@ -79,6 +79,7 @@ files:
79
79
  - lib/validators/phony_validator.rb
80
80
  - phony_rails.gemspec
81
81
  - spec/lib/phony_rails_spec.rb
82
+ - spec/lib/phony_validator_spec.rb
82
83
  - spec/spec_helper.rb
83
84
  has_rdoc: true
84
85
  homepage: https://github.com/joost/phony_rails
@@ -112,4 +113,5 @@ specification_version: 3
112
113
  summary: This Gem adds useful methods to your Rails app to validate, display and save phone numbers.
113
114
  test_files:
114
115
  - spec/lib/phony_rails_spec.rb
116
+ - spec/lib/phony_validator_spec.rb
115
117
  - spec/spec_helper.rb