validates_timeliness 2.3.2 → 3.0.0.beta

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. data/CHANGELOG +12 -4
  2. data/LICENSE +1 -1
  3. data/README.rdoc +138 -280
  4. data/Rakefile +30 -16
  5. data/lib/generators/validates_timeliness/install_generator.rb +17 -0
  6. data/lib/generators/validates_timeliness/templates/en.yml +16 -0
  7. data/lib/generators/validates_timeliness/templates/validates_timeliness.rb +22 -0
  8. data/lib/validates_timeliness.rb +46 -52
  9. data/lib/validates_timeliness/attribute_methods.rb +51 -0
  10. data/lib/validates_timeliness/conversion.rb +69 -0
  11. data/lib/validates_timeliness/extensions.rb +14 -0
  12. data/lib/validates_timeliness/extensions/date_time_select.rb +45 -0
  13. data/lib/validates_timeliness/extensions/multiparameter_handler.rb +31 -0
  14. data/lib/validates_timeliness/helper_methods.rb +41 -0
  15. data/lib/validates_timeliness/orms/active_record.rb +14 -0
  16. data/lib/validates_timeliness/parser.rb +389 -17
  17. data/lib/validates_timeliness/validator.rb +37 -200
  18. data/lib/validates_timeliness/version.rb +1 -1
  19. data/spec/model_helpers.rb +27 -0
  20. data/spec/spec_helper.rb +74 -43
  21. data/spec/test_model.rb +56 -0
  22. data/spec/validates_timeliness/attribute_methods_spec.rb +36 -0
  23. data/spec/validates_timeliness/conversion_spec.rb +204 -0
  24. data/spec/validates_timeliness/extensions/date_time_select_spec.rb +178 -0
  25. data/spec/validates_timeliness/extensions/multiparameter_handler_spec.rb +21 -0
  26. data/spec/validates_timeliness/helper_methods_spec.rb +36 -0
  27. data/spec/{formats_spec.rb → validates_timeliness/parser_spec.rb} +105 -71
  28. data/spec/validates_timeliness/validator/after_spec.rb +59 -0
  29. data/spec/validates_timeliness/validator/before_spec.rb +59 -0
  30. data/spec/validates_timeliness/validator/is_at_spec.rb +63 -0
  31. data/spec/validates_timeliness/validator/on_or_after_spec.rb +59 -0
  32. data/spec/validates_timeliness/validator/on_or_before_spec.rb +59 -0
  33. data/spec/validates_timeliness/validator_spec.rb +172 -0
  34. data/validates_timeliness.gemspec +30 -0
  35. metadata +42 -40
  36. data/TODO +0 -8
  37. data/lib/validates_timeliness/action_view/instance_tag.rb +0 -52
  38. data/lib/validates_timeliness/active_record/attribute_methods.rb +0 -77
  39. data/lib/validates_timeliness/active_record/multiparameter_attributes.rb +0 -69
  40. data/lib/validates_timeliness/formats.rb +0 -368
  41. data/lib/validates_timeliness/locale/en.new.yml +0 -18
  42. data/lib/validates_timeliness/locale/en.old.yml +0 -18
  43. data/lib/validates_timeliness/matcher.rb +0 -1
  44. data/lib/validates_timeliness/spec/rails/matchers/validate_timeliness.rb +0 -162
  45. data/lib/validates_timeliness/validation_methods.rb +0 -46
  46. data/spec/action_view/instance_tag_spec.rb +0 -194
  47. data/spec/active_record/attribute_methods_spec.rb +0 -157
  48. data/spec/active_record/multiparameter_attributes_spec.rb +0 -118
  49. data/spec/ginger_scenarios.rb +0 -19
  50. data/spec/parser_spec.rb +0 -65
  51. data/spec/resources/application.rb +0 -2
  52. data/spec/resources/person.rb +0 -3
  53. data/spec/resources/schema.rb +0 -10
  54. data/spec/resources/sqlite_patch.rb +0 -19
  55. data/spec/spec/rails/matchers/validate_timeliness_spec.rb +0 -245
  56. data/spec/time_travel/MIT-LICENSE +0 -20
  57. data/spec/time_travel/time_extensions.rb +0 -33
  58. data/spec/time_travel/time_travel.rb +0 -12
  59. data/spec/validator_spec.rb +0 -723
@@ -0,0 +1,59 @@
1
+ require 'spec_helper'
2
+
3
+ describe ValidatesTimeliness::Validator, ":on_or_after option" do
4
+ include ModelHelpers
5
+
6
+ describe "for date type" do
7
+ before do
8
+ Person.validates_date :birth_date, :on_or_after => Date.new(2010, 1, 1)
9
+ end
10
+
11
+ it "should not be valid for date before restriction" do
12
+ invalid!(:birth_date, Date.new(2009, 12, 31), 'must be on or after 2010-01-01')
13
+ end
14
+
15
+ it "should be valid for same date value" do
16
+ valid!(:birth_date, Date.new(2010, 1, 1))
17
+ end
18
+
19
+ it "should be valid for date after restriction" do
20
+ valid!(:birth_date, Date.new(2010, 1, 2))
21
+ end
22
+ end
23
+
24
+ describe "for time type" do
25
+ before do
26
+ Person.validates_time :birth_time, :on_or_after => Time.mktime(2000, 1, 1, 12, 0, 0)
27
+ end
28
+
29
+ it "should not be valid for time before restriction" do
30
+ invalid!(:birth_time, Time.local_time(2000, 1, 1, 11, 59, 59), 'must be on or after 12:00:00')
31
+ end
32
+
33
+ it "should be valid for time after restriction" do
34
+ valid!(:birth_time, Time.local_time(2000, 1, 1, 12, 00, 01))
35
+ end
36
+
37
+ it "should be valid for same time as restriction" do
38
+ valid!(:birth_time, Time.local_time(2000, 1, 1, 12, 0, 0))
39
+ end
40
+ end
41
+
42
+ describe "for datetime type" do
43
+ before do
44
+ Person.validates_datetime :birth_datetime, :on_or_after => DateTime.civil_from_format(:local, 2010, 1, 1, 12, 0, 0)
45
+ end
46
+
47
+ it "should not be valid for datetime before restriction" do
48
+ invalid!(:birth_datetime, DateTime.civil_from_format(:local, 2010, 1, 1, 11, 59, 59), 'must be on or after 2010-01-01 12:00:00')
49
+ end
50
+
51
+ it "should be valid for same datetime as restriction" do
52
+ valid!(:birth_datetime, DateTime.civil_from_format(:local, 2010, 1, 1, 12, 0, 0))
53
+ end
54
+
55
+ it "should be valid for datetime after restriction" do
56
+ valid!(:birth_datetime, DateTime.civil_from_format(:local, 2010, 1, 1, 12, 0, 1))
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,59 @@
1
+ require 'spec_helper'
2
+
3
+ describe ValidatesTimeliness::Validator, ":on_or_before option" do
4
+ include ModelHelpers
5
+
6
+ describe "for date type" do
7
+ before do
8
+ Person.validates_date :birth_date, :on_or_before => Date.new(2010, 1, 1)
9
+ end
10
+
11
+ it "should not be valid for date after restriction" do
12
+ invalid!(:birth_date, Date.new(2010, 1, 2), 'must be on or before 2010-01-01')
13
+ end
14
+
15
+ it "should be valid for date before restriction" do
16
+ valid!(:birth_date, Date.new(2009, 12, 31))
17
+ end
18
+
19
+ it "should be valid for same date value" do
20
+ valid!(:birth_date, Date.new(2010, 1, 1))
21
+ end
22
+ end
23
+
24
+ describe "for time type" do
25
+ before do
26
+ Person.validates_time :birth_time, :on_or_before => Time.mktime(2000, 1, 1, 12, 0, 0)
27
+ end
28
+
29
+ it "should not be valid for time after restriction" do
30
+ invalid!(:birth_time, Time.local_time(2000, 1, 1, 12, 00, 01), 'must be on or before 12:00:00')
31
+ end
32
+
33
+ it "should be valid for time before restriction" do
34
+ valid!(:birth_time, Time.local_time(2000, 1, 1, 11, 59, 59))
35
+ end
36
+
37
+ it "should be valid for same time as restriction" do
38
+ valid!(:birth_time, Time.local_time(2000, 1, 1, 12, 0, 0))
39
+ end
40
+ end
41
+
42
+ describe "for datetime type" do
43
+ before do
44
+ Person.validates_datetime :birth_datetime, :on_or_before => DateTime.civil_from_format(:local, 2010, 1, 1, 12, 0, 0)
45
+ end
46
+
47
+ it "should not be valid for datetime after restriction" do
48
+ invalid!(:birth_datetime, DateTime.civil_from_format(:local, 2010, 1, 1, 12, 0, 1), 'must be on or before 2010-01-01 12:00:00')
49
+ end
50
+
51
+ it "should be valid for same datetime as restriction" do
52
+ valid!(:birth_datetime, DateTime.civil_from_format(:local, 2010, 1, 1, 12, 0, 0))
53
+ end
54
+
55
+ it "should not be valid for datetime before restriction" do
56
+ valid!(:birth_datetime, DateTime.civil_from_format(:local, 2010, 1, 1, 11, 59, 59))
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,172 @@
1
+ require 'spec_helper'
2
+
3
+ describe ValidatesTimeliness::Validator do
4
+ include ModelHelpers
5
+ NIL = [nil]
6
+
7
+ before do
8
+ Timecop.freeze(Time.local_time(2010, 1, 1, 0, 0, 0))
9
+ end
10
+
11
+ it 'should return validator kind as :timeliness' do
12
+ ValidatesTimeliness::Validator.kind.should == :timeliness
13
+ end
14
+
15
+ describe "Model.validates :timeliness option" do
16
+ it 'should use plugin validator class' do
17
+ Person.validates :birth_date, :timeliness => {:is_at => Date.new(2010,1,1), :type => :date}
18
+ Person.validators.should have(1).kind_of(TimelinessValidator)
19
+ invalid!(:birth_date, Date.new(2010,1,2))
20
+ valid!(:birth_date, Date.new(2010,1,1))
21
+ end
22
+
23
+ it 'should use default to :datetime type' do
24
+ Person.validates :birth_datetime, :timeliness => {:is_at => Time.mktime(2010,1,1)}
25
+ Person.validators.first.type.should == :datetime
26
+ end
27
+ end
28
+
29
+ it 'should not be valid for value which not valid date or time value' do
30
+ Person.validates_date :birth_date
31
+ invalid!(:birth_date, "Not a date", 'is not a valid date')
32
+ end
33
+
34
+ it 'should not be valid attribute is type cast to nil but raw value is non-nil invalid value' do
35
+ Person.validates_date :birth_date, :allow_nil => true
36
+ record = Person.new
37
+ record.stub!(:birth_date).and_return(nil)
38
+ record.stub!(:_timeliness_raw_value_for).and_return("Not a date")
39
+ record.should_not be_valid
40
+ record.errors[:birth_date].first.should == 'is not a valid date'
41
+ end
42
+
43
+ describe ":allow_nil option" do
44
+ it 'should not allow nil by default' do
45
+ Person.validates_date :birth_date
46
+ invalid!(:birth_date, NIL, 'is not a valid date')
47
+ valid!(:birth_date, Date.today)
48
+ end
49
+
50
+ it 'should allow nil when true' do
51
+ Person.validates_date :birth_date, :allow_nil => true
52
+ valid!(:birth_date, NIL)
53
+ end
54
+ end
55
+
56
+ describe ":allow_blank option" do
57
+ it 'should not allow blank by default' do
58
+ Person.validates_date :birth_date
59
+ invalid!(:birth_date, '', 'is not a valid date')
60
+ valid!(:birth_date, Date.today)
61
+ end
62
+
63
+ it 'should allow blank when true' do
64
+ Person.validates_date :birth_date, :allow_blank => true
65
+ valid!(:birth_date, '')
66
+ end
67
+ end
68
+
69
+ describe ":between option" do
70
+ describe "array value" do
71
+ it 'should be split option into :on_or_after and :on_or_before values' do
72
+ on_or_after, on_or_before = Date.new(2010,1,1), Date.new(2010,1,2)
73
+ Person.validates_time :birth_date, :between => [on_or_after, on_or_before]
74
+ Person.validators.first.options[:on_or_after].should == on_or_after
75
+ Person.validators.first.options[:on_or_before].should == on_or_before
76
+ end
77
+ end
78
+
79
+ describe "range value" do
80
+ it 'should be split option into :on_or_after and :on_or_before values' do
81
+ on_or_after, on_or_before = Date.new(2010,1,1), Date.new(2010,1,2)
82
+ Person.validates_time :birth_date, :between => on_or_after..on_or_before
83
+ Person.validators.first.options[:on_or_after].should == on_or_after
84
+ Person.validators.first.options[:on_or_before].should == on_or_before
85
+ end
86
+ end
87
+ end
88
+
89
+ describe ":ignore_usec option" do
90
+ it "should not be valid when usec values don't match and option is false" do
91
+ Person.validates_datetime :birth_datetime, :on_or_before => Time.utc(2010,1,2,3,4,5), :ignore_usec => false
92
+ invalid!(:birth_datetime, Time.utc(2010,1,2,3,4,5,10000))
93
+ end
94
+
95
+ it "should be valid when usec values dont't match and option is true" do
96
+ Person.validates_datetime :birth_datetime, :on_or_before => Time.utc(2010,1,2,3,4,5), :ignore_usec => true
97
+ valid!(:birth_datetime, Time.utc(2010,1,2,3,4,5,10000))
98
+ end
99
+ end
100
+
101
+ describe ":format option" do
102
+ before(:all) do
103
+ ValidatesTimeliness.use_plugin_parser = true
104
+ end
105
+
106
+ it "should be valid when value matches format" do
107
+ Person.validates_date :birth_date, :format => 'dd-mm-yyyy'
108
+ valid!(:birth_date, '11-12-1913')
109
+ end
110
+
111
+ it "should not be valid when value does not match format" do
112
+ Person.validates_date :birth_date, :format => 'dd/mm/yyyy'
113
+ invalid!(:birth_date, '1913-12-11', 'is not a valid date')
114
+ end
115
+
116
+ after(:all) do
117
+ ValidatesTimeliness.use_plugin_parser = false
118
+ end
119
+ end
120
+
121
+ describe "restriction value errors" do
122
+ let(:person) { Person.new(:birth_date => Date.today) }
123
+
124
+ before do
125
+ Person.validates_time :birth_date, :is_at => lambda { raise }
126
+ end
127
+
128
+ it "should be added when ignore_restriction_errors is false" do
129
+ ValidatesTimeliness.ignore_restriction_errors = false
130
+ person.valid?
131
+ person.errors[:birth_date].first.should match("Error occurred validating birth_date for :is_at restriction")
132
+ end
133
+
134
+ it "should not be added when ignore_restriction_errors is true" do
135
+ ValidatesTimeliness.ignore_restriction_errors = true
136
+ person.valid?
137
+ person.errors[:birth_date].should be_empty
138
+ end
139
+
140
+ after :all do
141
+ ValidatesTimeliness.ignore_restriction_errors = false
142
+ end
143
+ end
144
+
145
+ describe "#format_error_value" do
146
+ describe "default" do
147
+ it 'should format date error value as yyyy-mm-dd' do
148
+ validator = ValidatesTimeliness::Validator.new(:attributes => [:birth_date], :type => :date)
149
+ validator.format_error_value(Date.new(2010,1,1)).should == '2010-01-01'
150
+ end
151
+
152
+ it 'should format time error value as hh:nn:ss' do
153
+ validator = ValidatesTimeliness::Validator.new(:attributes => [:birth_time], :type => :time)
154
+ validator.format_error_value(Time.mktime(2010,1,1,12,34,56)).should == '12:34:56'
155
+ end
156
+
157
+ it 'should format datetime error value as yyyy-mm-dd hh:nn:ss' do
158
+ validator = ValidatesTimeliness::Validator.new(:attributes => [:birth_datetime], :type => :datetime)
159
+ validator.format_error_value(Time.mktime(2010,1,1,12,34,56)).should == '2010-01-01 12:34:56'
160
+ end
161
+ end
162
+ end
163
+
164
+ context "custom error message" do
165
+
166
+ it 'should be used for failing restriction' do
167
+ Person.validates_date :birth_date, :before => Time.now, :before_message => 'custom before message'
168
+ invalid!(:birth_date, Time.now, 'custom before message')
169
+ end
170
+
171
+ end
172
+ end
@@ -0,0 +1,30 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = %q{validates_timeliness}
5
+ s.version = "3.0.0.beta"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Adam Meehan"]
9
+ s.autorequire = %q{validates_timeliness}
10
+ s.date = %q{2010-09-17}
11
+ s.description = %q{Date and time validation plugin for Rails which allows custom formats}
12
+ s.email = %q{adam.meehan@gmail.com}
13
+ s.extra_rdoc_files = ["README.rdoc", "LICENSE", "CHANGELOG"]
14
+ s.files = ["validates_timeliness.gemspec", "LICENSE", "CHANGELOG", "README.rdoc", "Rakefile", "lib/generators", "lib/generators/validates_timeliness", "lib/generators/validates_timeliness/install_generator.rb", "lib/generators/validates_timeliness/templates", "lib/generators/validates_timeliness/templates/en.yml", "lib/generators/validates_timeliness/templates/validates_timeliness.rb", "lib/validates_timeliness", "lib/validates_timeliness/attribute_methods.rb", "lib/validates_timeliness/conversion.rb", "lib/validates_timeliness/extensions", "lib/validates_timeliness/extensions/date_time_select.rb", "lib/validates_timeliness/extensions/multiparameter_handler.rb", "lib/validates_timeliness/extensions.rb", "lib/validates_timeliness/helper_methods.rb", "lib/validates_timeliness/orms", "lib/validates_timeliness/orms/active_record.rb", "lib/validates_timeliness/parser.rb", "lib/validates_timeliness/validator.rb", "lib/validates_timeliness/version.rb", "lib/validates_timeliness.rb", "spec/model_helpers.rb", "spec/spec_helper.rb", "spec/test_model.rb", "spec/validates_timeliness", "spec/validates_timeliness/attribute_methods_spec.rb", "spec/validates_timeliness/conversion_spec.rb", "spec/validates_timeliness/extensions", "spec/validates_timeliness/extensions/date_time_select_spec.rb", "spec/validates_timeliness/extensions/multiparameter_handler_spec.rb", "spec/validates_timeliness/helper_methods_spec.rb", "spec/validates_timeliness/parser_spec.rb", "spec/validates_timeliness/validator", "spec/validates_timeliness/validator/after_spec.rb", "spec/validates_timeliness/validator/before_spec.rb", "spec/validates_timeliness/validator/is_at_spec.rb", "spec/validates_timeliness/validator/on_or_after_spec.rb", "spec/validates_timeliness/validator/on_or_before_spec.rb", "spec/validates_timeliness/validator_spec.rb"]
15
+ s.homepage = %q{http://github.com/adzap/validates_timeliness}
16
+ s.require_paths = ["lib"]
17
+ s.rubyforge_project = %q{validates_timeliness}
18
+ s.rubygems_version = %q{1.3.7}
19
+ s.summary = %q{Date and time validation plugin for Rails which allows custom formats}
20
+
21
+ if s.respond_to? :specification_version then
22
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
23
+ s.specification_version = 3
24
+
25
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
26
+ else
27
+ end
28
+ else
29
+ end
30
+ end
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: validates_timeliness
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
5
- prerelease: false
4
+ hash: 31098225
5
+ prerelease: true
6
6
  segments:
7
- - 2
8
7
  - 3
9
- - 2
10
- version: 2.3.2
8
+ - 0
9
+ - 0
10
+ - beta
11
+ version: 3.0.0.beta
11
12
  platform: ruby
12
13
  authors:
13
14
  - Adam Meehan
@@ -15,11 +16,11 @@ autorequire: validates_timeliness
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2010-11-07 00:00:00 +11:00
19
+ date: 2010-09-17 00:00:00 +10:00
19
20
  default_executable:
20
21
  dependencies: []
21
22
 
22
- description: Date and time validation plugin for Rails 2.x which allows custom formats
23
+ description: Date and time validation plugin for Rails which allows custom formats
23
24
  email: adam.meehan@gmail.com
24
25
  executables: []
25
26
 
@@ -28,43 +29,42 @@ extensions: []
28
29
  extra_rdoc_files:
29
30
  - README.rdoc
30
31
  - LICENSE
31
- - TODO
32
32
  - CHANGELOG
33
33
  files:
34
+ - validates_timeliness.gemspec
34
35
  - LICENSE
36
+ - CHANGELOG
35
37
  - README.rdoc
36
38
  - Rakefile
37
- - TODO
38
- - CHANGELOG
39
- - lib/validates_timeliness/action_view/instance_tag.rb
40
- - lib/validates_timeliness/active_record/attribute_methods.rb
41
- - lib/validates_timeliness/active_record/multiparameter_attributes.rb
42
- - lib/validates_timeliness/formats.rb
43
- - lib/validates_timeliness/locale/en.new.yml
44
- - lib/validates_timeliness/locale/en.old.yml
45
- - lib/validates_timeliness/matcher.rb
39
+ - lib/generators/validates_timeliness/install_generator.rb
40
+ - lib/generators/validates_timeliness/templates/en.yml
41
+ - lib/generators/validates_timeliness/templates/validates_timeliness.rb
42
+ - lib/validates_timeliness/attribute_methods.rb
43
+ - lib/validates_timeliness/conversion.rb
44
+ - lib/validates_timeliness/extensions/date_time_select.rb
45
+ - lib/validates_timeliness/extensions/multiparameter_handler.rb
46
+ - lib/validates_timeliness/extensions.rb
47
+ - lib/validates_timeliness/helper_methods.rb
48
+ - lib/validates_timeliness/orms/active_record.rb
46
49
  - lib/validates_timeliness/parser.rb
47
- - lib/validates_timeliness/spec/rails/matchers/validate_timeliness.rb
48
- - lib/validates_timeliness/validation_methods.rb
49
50
  - lib/validates_timeliness/validator.rb
50
51
  - lib/validates_timeliness/version.rb
51
52
  - lib/validates_timeliness.rb
52
- - spec/action_view/instance_tag_spec.rb
53
- - spec/active_record/attribute_methods_spec.rb
54
- - spec/active_record/multiparameter_attributes_spec.rb
55
- - spec/formats_spec.rb
56
- - spec/ginger_scenarios.rb
57
- - spec/parser_spec.rb
58
- - spec/resources/application.rb
59
- - spec/resources/person.rb
60
- - spec/resources/schema.rb
61
- - spec/resources/sqlite_patch.rb
62
- - spec/spec/rails/matchers/validate_timeliness_spec.rb
53
+ - spec/model_helpers.rb
63
54
  - spec/spec_helper.rb
64
- - spec/time_travel/MIT-LICENSE
65
- - spec/time_travel/time_extensions.rb
66
- - spec/time_travel/time_travel.rb
67
- - spec/validator_spec.rb
55
+ - spec/test_model.rb
56
+ - spec/validates_timeliness/attribute_methods_spec.rb
57
+ - spec/validates_timeliness/conversion_spec.rb
58
+ - spec/validates_timeliness/extensions/date_time_select_spec.rb
59
+ - spec/validates_timeliness/extensions/multiparameter_handler_spec.rb
60
+ - spec/validates_timeliness/helper_methods_spec.rb
61
+ - spec/validates_timeliness/parser_spec.rb
62
+ - spec/validates_timeliness/validator/after_spec.rb
63
+ - spec/validates_timeliness/validator/before_spec.rb
64
+ - spec/validates_timeliness/validator/is_at_spec.rb
65
+ - spec/validates_timeliness/validator/on_or_after_spec.rb
66
+ - spec/validates_timeliness/validator/on_or_before_spec.rb
67
+ - spec/validates_timeliness/validator_spec.rb
68
68
  has_rdoc: true
69
69
  homepage: http://github.com/adzap/validates_timeliness
70
70
  licenses: []
@@ -86,18 +86,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
86
86
  required_rubygems_version: !ruby/object:Gem::Requirement
87
87
  none: false
88
88
  requirements:
89
- - - ">="
89
+ - - ">"
90
90
  - !ruby/object:Gem::Version
91
- hash: 3
91
+ hash: 25
92
92
  segments:
93
- - 0
94
- version: "0"
93
+ - 1
94
+ - 3
95
+ - 1
96
+ version: 1.3.1
95
97
  requirements: []
96
98
 
97
- rubyforge_project: validatestime
99
+ rubyforge_project: validates_timeliness
98
100
  rubygems_version: 1.3.7
99
101
  signing_key:
100
102
  specification_version: 3
101
- summary: Date and time validation plugin for Rails 2.x which allows custom formats
103
+ summary: Date and time validation plugin for Rails which allows custom formats
102
104
  test_files: []
103
105