validates_timeliness 3.0.15 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +21 -0
- data/CHANGELOG.rdoc +0 -5
- data/README.rdoc +5 -5
- data/gemfiles/rails_4_0.gemfile +19 -0
- data/gemfiles/rails_4_1.gemfile +19 -0
- data/gemfiles/rails_4_2.gemfile +19 -0
- data/lib/generators/validates_timeliness/templates/validates_timeliness.rb +2 -2
- data/lib/validates_timeliness.rb +1 -1
- data/lib/validates_timeliness/attribute_methods.rb +36 -36
- data/lib/validates_timeliness/extensions.rb +3 -4
- data/lib/validates_timeliness/extensions/date_time_select.rb +2 -9
- data/lib/validates_timeliness/extensions/multiparameter_handler.rb +59 -65
- data/lib/validates_timeliness/helper_methods.rb +8 -2
- data/lib/validates_timeliness/orm/active_record.rb +59 -13
- data/lib/validates_timeliness/validator.rb +13 -5
- data/lib/validates_timeliness/version.rb +1 -1
- data/spec/spec_helper.rb +3 -2
- data/spec/support/model_helpers.rb +4 -4
- data/spec/support/tag_matcher.rb +35 -0
- data/spec/support/test_model.rb +0 -1
- data/spec/validates_timeliness/attribute_methods_spec.rb +10 -10
- data/spec/validates_timeliness/conversion_spec.rb +41 -41
- data/spec/validates_timeliness/extensions/date_time_select_spec.rb +5 -4
- data/spec/validates_timeliness/extensions/multiparameter_handler_spec.rb +8 -7
- data/spec/validates_timeliness/helper_methods_spec.rb +8 -8
- data/spec/validates_timeliness/orm/active_record_spec.rb +37 -37
- data/spec/validates_timeliness/validator/after_spec.rb +3 -3
- data/spec/validates_timeliness/validator/before_spec.rb +3 -3
- data/spec/validates_timeliness/validator/is_at_spec.rb +4 -4
- data/spec/validates_timeliness/validator/on_or_after_spec.rb +3 -3
- data/spec/validates_timeliness/validator/on_or_before_spec.rb +3 -3
- data/spec/validates_timeliness/validator_spec.rb +26 -26
- data/spec/validates_timeliness_spec.rb +8 -8
- metadata +7 -11
- data/gemfiles/mongoid_2_1.gemfile +0 -16
- data/gemfiles/mongoid_2_2.gemfile +0 -16
- data/gemfiles/mongoid_2_3.gemfile +0 -16
- data/gemfiles/mongoid_2_4.gemfile +0 -16
- data/gemfiles/rails_3_0.gemfile +0 -15
- data/gemfiles/rails_3_1.gemfile +0 -15
- data/gemfiles/rails_3_2.gemfile +0 -15
- data/lib/validates_timeliness/orm/mongoid.rb +0 -49
- data/spec/validates_timeliness/orm/mongoid_spec.rb +0 -223
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe ValidatesTimeliness::Extensions::DateTimeSelect do
|
3
|
+
describe 'ValidatesTimeliness::Extensions::DateTimeSelect' do
|
4
4
|
include ActionView::Helpers::DateHelper
|
5
5
|
attr_reader :person, :params
|
6
6
|
|
@@ -111,7 +111,7 @@ describe ValidatesTimeliness::Extensions::DateTimeSelect do
|
|
111
111
|
@output = date_select(:person, :birth_date, :include_blank => true, :discard_day => true)
|
112
112
|
should_have_datetime_selected(:birth_date, :year => 2009, :month => 'February')
|
113
113
|
should_not_have_datetime_selected(:birth_time, :day)
|
114
|
-
@output.
|
114
|
+
expect(@output).to have_tag("input[id=person_birth_date_3i][type=hidden][value='1']")
|
115
115
|
end
|
116
116
|
end
|
117
117
|
|
@@ -150,14 +150,15 @@ describe ValidatesTimeliness::Extensions::DateTimeSelect do
|
|
150
150
|
def should_have_datetime_selected(field, datetime_hash)
|
151
151
|
datetime_hash.each do |key, value|
|
152
152
|
index = {:year => 1, :month => 2, :day => 3, :hour => 4, :min => 5, :sec => 6}[key]
|
153
|
-
@output.
|
153
|
+
expect(@output).to have_tag("select[id=person_#{field}_#{index}i] option[selected=selected]", value.to_s)
|
154
154
|
end
|
155
155
|
end
|
156
156
|
|
157
157
|
def should_not_have_datetime_selected(field, *attributes)
|
158
158
|
attributes.each do |attribute|
|
159
159
|
index = {:year => 1, :month => 2, :day => 3, :hour => 4, :min => 5, :sec => 6}[attribute]
|
160
|
-
@output.
|
160
|
+
expect(@output).not_to have_tag("select[id=person_#{attribute}_#{index}i] option[selected=selected]")
|
161
161
|
end
|
162
162
|
end
|
163
|
+
|
163
164
|
end
|
@@ -1,38 +1,38 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe ValidatesTimeliness::Extensions::MultiparameterHandler do
|
3
|
+
describe 'ValidatesTimeliness::Extensions::MultiparameterHandler' do
|
4
4
|
|
5
5
|
context "time column" do
|
6
6
|
it 'should assign a string value for invalid date portion' do
|
7
7
|
employee = record_with_multiparameter_attribute(:birth_datetime, [2000, 2, 31, 12, 0, 0])
|
8
|
-
employee.birth_datetime_before_type_cast.
|
8
|
+
expect(employee.birth_datetime_before_type_cast).to eq '2000-02-31 12:00:00'
|
9
9
|
end
|
10
10
|
|
11
11
|
it 'should assign a Time value for valid datetimes' do
|
12
12
|
employee = record_with_multiparameter_attribute(:birth_datetime, [2000, 2, 28, 12, 0, 0])
|
13
|
-
employee.birth_datetime_before_type_cast.
|
13
|
+
expect(employee.birth_datetime_before_type_cast).to eq Time.zone.local(2000, 2, 28, 12, 0, 0)
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'should assign a string value for incomplete time' do
|
17
17
|
employee = record_with_multiparameter_attribute(:birth_datetime, [2000, nil, nil])
|
18
|
-
employee.birth_datetime_before_type_cast.
|
18
|
+
expect(employee.birth_datetime_before_type_cast).to eq '2000-00-00'
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
context "date column" do
|
23
23
|
it 'should assign a string value for invalid date' do
|
24
24
|
employee = record_with_multiparameter_attribute(:birth_date, [2000, 2, 31])
|
25
|
-
employee.birth_date_before_type_cast.
|
25
|
+
expect(employee.birth_date_before_type_cast).to eq '2000-02-31'
|
26
26
|
end
|
27
27
|
|
28
28
|
it 'should assign a Date value for valid date' do
|
29
29
|
employee = record_with_multiparameter_attribute(:birth_date, [2000, 2, 28])
|
30
|
-
employee.birth_date_before_type_cast.
|
30
|
+
expect(employee.birth_date_before_type_cast).to eq Date.new(2000, 2, 28)
|
31
31
|
end
|
32
32
|
|
33
33
|
it 'should assign a string value for incomplete date' do
|
34
34
|
employee = record_with_multiparameter_attribute(:birth_date, [2000, nil, nil])
|
35
|
-
employee.birth_date_before_type_cast.
|
35
|
+
expect(employee.birth_date_before_type_cast).to eq '2000-00-00'
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
@@ -41,4 +41,5 @@ describe ValidatesTimeliness::Extensions::MultiparameterHandler do
|
|
41
41
|
values.each_with_index {|value, index| hash["#{name}(#{index+1}i)"] = value.to_s }
|
42
42
|
Employee.new(hash)
|
43
43
|
end
|
44
|
+
|
44
45
|
end
|
@@ -4,27 +4,27 @@ describe ValidatesTimeliness, 'HelperMethods' do
|
|
4
4
|
let(:record) { Person.new }
|
5
5
|
|
6
6
|
it 'should define class validation methods' do
|
7
|
-
Person.
|
8
|
-
Person.
|
9
|
-
Person.
|
7
|
+
expect(Person).to respond_to(:validates_date)
|
8
|
+
expect(Person).to respond_to(:validates_time)
|
9
|
+
expect(Person).to respond_to(:validates_datetime)
|
10
10
|
end
|
11
11
|
|
12
12
|
it 'should define instance validation methods' do
|
13
|
-
record.
|
14
|
-
record.
|
15
|
-
record.
|
13
|
+
expect(record).to respond_to(:validates_date)
|
14
|
+
expect(record).to respond_to(:validates_time)
|
15
|
+
expect(record).to respond_to(:validates_datetime)
|
16
16
|
end
|
17
17
|
|
18
18
|
it 'should validate instance using class validation defined' do
|
19
19
|
Person.validates_date :birth_date
|
20
20
|
record.valid?
|
21
21
|
|
22
|
-
record.errors[:birth_date].
|
22
|
+
expect(record.errors[:birth_date]).not_to be_empty
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'should validate instance using instance valiation method' do
|
26
26
|
record.validates_date :birth_date
|
27
27
|
|
28
|
-
record.errors[:birth_date].
|
28
|
+
expect(record.errors[:birth_date]).not_to be_empty
|
29
29
|
end
|
30
30
|
end
|
@@ -6,41 +6,41 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
6
6
|
let(:record) { Employee.new }
|
7
7
|
|
8
8
|
it 'should be defined for the class' do
|
9
|
-
ActiveRecord::Base.
|
10
|
-
ActiveRecord::Base.
|
11
|
-
ActiveRecord::Base.
|
9
|
+
expect(ActiveRecord::Base).to respond_to(:validates_date)
|
10
|
+
expect(ActiveRecord::Base).to respond_to(:validates_time)
|
11
|
+
expect(ActiveRecord::Base).to respond_to(:validates_datetime)
|
12
12
|
end
|
13
13
|
|
14
14
|
it 'should defines for the instance' do
|
15
|
-
record.
|
16
|
-
record.
|
17
|
-
record.
|
15
|
+
expect(record).to respond_to(:validates_date)
|
16
|
+
expect(record).to respond_to(:validates_time)
|
17
|
+
expect(record).to respond_to(:validates_datetime)
|
18
18
|
end
|
19
19
|
|
20
20
|
it "should validate a valid value string" do
|
21
21
|
record.birth_date = '2012-01-01'
|
22
22
|
|
23
23
|
record.valid?
|
24
|
-
record.errors[:birth_date].
|
24
|
+
expect(record.errors[:birth_date]).to be_empty
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should validate a invalid value string" do
|
28
28
|
record.birth_date = 'not a date'
|
29
29
|
|
30
30
|
record.valid?
|
31
|
-
record.errors[:birth_date].
|
31
|
+
expect(record.errors[:birth_date]).not_to be_empty
|
32
32
|
end
|
33
33
|
|
34
34
|
it "should validate a nil value" do
|
35
35
|
record.birth_date = nil
|
36
36
|
|
37
37
|
record.valid?
|
38
|
-
record.errors[:birth_date].
|
38
|
+
expect(record.errors[:birth_date]).to be_empty
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
42
|
it 'should determine type for attribute' do
|
43
|
-
Employee.timeliness_attribute_type(:birth_date).
|
43
|
+
expect(Employee.timeliness_attribute_type(:birth_date)).to eq :date
|
44
44
|
end
|
45
45
|
|
46
46
|
context 'attribute timezone awareness' do
|
@@ -58,17 +58,17 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
58
58
|
|
59
59
|
context 'for column attribute' do
|
60
60
|
it 'should be detected from column type' do
|
61
|
-
klass.timeliness_attribute_timezone_aware?(:birth_date).
|
62
|
-
klass.timeliness_attribute_timezone_aware?(:birth_time).
|
63
|
-
klass.timeliness_attribute_timezone_aware?(:birth_datetime).
|
61
|
+
expect(klass.timeliness_attribute_timezone_aware?(:birth_date)).to be_falsey
|
62
|
+
expect(klass.timeliness_attribute_timezone_aware?(:birth_time)).to be_falsey
|
63
|
+
expect(klass.timeliness_attribute_timezone_aware?(:birth_datetime)).to be_truthy
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
67
|
context 'for non-column attribute' do
|
68
68
|
it 'should be detected from the validation type' do
|
69
|
-
klass.timeliness_attribute_timezone_aware?(:some_date).
|
70
|
-
klass.timeliness_attribute_timezone_aware?(:some_time).
|
71
|
-
klass.timeliness_attribute_timezone_aware?(:some_datetime).
|
69
|
+
expect(klass.timeliness_attribute_timezone_aware?(:some_date)).to be_falsey
|
70
|
+
expect(klass.timeliness_attribute_timezone_aware?(:some_time)).to be_falsey
|
71
|
+
expect(klass.timeliness_attribute_timezone_aware?(:some_datetime)).to be_truthy
|
72
72
|
end
|
73
73
|
end
|
74
74
|
end
|
@@ -88,7 +88,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
88
88
|
it 'should store raw value' do
|
89
89
|
record.birth_datetime = datetime_string = '2010-01-01 12:30'
|
90
90
|
|
91
|
-
record.
|
91
|
+
expect(record.read_timeliness_attribute_before_type_cast('birth_datetime')).to eq datetime_string
|
92
92
|
end
|
93
93
|
end
|
94
94
|
|
@@ -96,7 +96,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
96
96
|
it 'should store raw value' do
|
97
97
|
record.birth_date = date_string = '2010-01-01'
|
98
98
|
|
99
|
-
record.
|
99
|
+
expect(record.read_timeliness_attribute_before_type_cast('birth_date')).to eq date_string
|
100
100
|
end
|
101
101
|
end
|
102
102
|
|
@@ -104,7 +104,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
104
104
|
it 'should store raw value' do
|
105
105
|
record.birth_time = time_string = '12:12'
|
106
106
|
|
107
|
-
record.
|
107
|
+
expect(record.read_timeliness_attribute_before_type_cast('birth_time')).to eq time_string
|
108
108
|
end
|
109
109
|
end
|
110
110
|
end
|
@@ -122,13 +122,13 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
122
122
|
|
123
123
|
context "for a date column" do
|
124
124
|
it 'should parse a string value' do
|
125
|
-
Timeliness::Parser.
|
125
|
+
expect(Timeliness::Parser).to receive(:parse)
|
126
126
|
|
127
127
|
record.birth_date = '2010-01-01'
|
128
128
|
end
|
129
129
|
|
130
130
|
it 'should parse a invalid string value as nil' do
|
131
|
-
Timeliness::Parser.
|
131
|
+
expect(Timeliness::Parser).to receive(:parse)
|
132
132
|
|
133
133
|
record.birth_date = 'not valid'
|
134
134
|
end
|
@@ -136,20 +136,20 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
136
136
|
it 'should store a Date value after parsing string' do
|
137
137
|
record.birth_date = '2010-01-01'
|
138
138
|
|
139
|
-
record.birth_date.
|
140
|
-
record.birth_date.
|
139
|
+
expect(record.birth_date).to be_kind_of(Date)
|
140
|
+
expect(record.birth_date).to eq Date.new(2010, 1, 1)
|
141
141
|
end
|
142
142
|
end
|
143
143
|
|
144
144
|
context "for a time column" do
|
145
145
|
it 'should parse a string value' do
|
146
|
-
Timeliness::Parser.
|
146
|
+
expect(Timeliness::Parser).to receive(:parse)
|
147
147
|
|
148
148
|
record.birth_time = '12:30'
|
149
149
|
end
|
150
150
|
|
151
151
|
it 'should parse a invalid string value as nil' do
|
152
|
-
Timeliness::Parser.
|
152
|
+
expect(Timeliness::Parser).to receive(:parse)
|
153
153
|
|
154
154
|
record.birth_time = 'not valid'
|
155
155
|
end
|
@@ -157,8 +157,8 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
157
157
|
it 'should store a Time value after parsing string' do
|
158
158
|
record.birth_time = '12:30'
|
159
159
|
|
160
|
-
record.birth_time.
|
161
|
-
record.birth_time.
|
160
|
+
expect(record.birth_time).to be_kind_of(Time)
|
161
|
+
expect(record.birth_time).to eq Time.utc(2000, 1, 1, 12, 30)
|
162
162
|
end
|
163
163
|
end
|
164
164
|
|
@@ -166,13 +166,13 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
166
166
|
with_config(:default_timezone, 'Australia/Melbourne')
|
167
167
|
|
168
168
|
it 'should parse a string value' do
|
169
|
-
Timeliness::Parser.
|
169
|
+
expect(Timeliness::Parser).to receive(:parse)
|
170
170
|
|
171
171
|
record.birth_datetime = '2010-01-01 12:00'
|
172
172
|
end
|
173
173
|
|
174
174
|
it 'should parse a invalid string value as nil' do
|
175
|
-
Timeliness::Parser.
|
175
|
+
expect(Timeliness::Parser).to receive(:parse)
|
176
176
|
|
177
177
|
record.birth_datetime = 'not valid'
|
178
178
|
end
|
@@ -180,13 +180,13 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
180
180
|
it 'should parse string into Time value' do
|
181
181
|
record.birth_datetime = '2010-01-01 12:00'
|
182
182
|
|
183
|
-
record.birth_datetime.
|
183
|
+
expect(record.birth_datetime).to be_kind_of(Time)
|
184
184
|
end
|
185
185
|
|
186
186
|
it 'should parse string as current timezone' do
|
187
187
|
record.birth_datetime = '2010-06-01 12:00'
|
188
188
|
|
189
|
-
record.birth_datetime.utc_offset.
|
189
|
+
expect(record.birth_datetime.utc_offset).to eq Time.zone.utc_offset
|
190
190
|
end
|
191
191
|
end
|
192
192
|
end
|
@@ -199,7 +199,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
199
199
|
|
200
200
|
record.reload
|
201
201
|
|
202
|
-
record.
|
202
|
+
expect(record.read_timeliness_attribute_before_type_cast('birth_date')).to be_nil
|
203
203
|
end
|
204
204
|
end
|
205
205
|
|
@@ -207,13 +207,13 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
207
207
|
let(:record) { Employee.new }
|
208
208
|
|
209
209
|
it 'should be defined on class if ORM supports it' do
|
210
|
-
record.
|
210
|
+
expect(record).to respond_to(:birth_datetime_before_type_cast)
|
211
211
|
end
|
212
212
|
|
213
213
|
it 'should return original value' do
|
214
214
|
record.birth_datetime = date_string = '2010-01-01'
|
215
215
|
|
216
|
-
record.birth_datetime_before_type_cast.
|
216
|
+
expect(record.birth_datetime_before_type_cast).to eq date_string
|
217
217
|
end
|
218
218
|
|
219
219
|
it 'should return attribute if no attribute assignment has been made' do
|
@@ -221,7 +221,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
221
221
|
Employee.create(:birth_datetime => datetime)
|
222
222
|
|
223
223
|
record = Employee.last
|
224
|
-
record.birth_datetime_before_type_cast.
|
224
|
+
expect(record.birth_datetime_before_type_cast).to match(/#{datetime.utc.to_s[0...-4]}/)
|
225
225
|
end
|
226
226
|
|
227
227
|
context "with plugin parser" do
|
@@ -230,7 +230,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
230
230
|
it 'should return original value' do
|
231
231
|
record.birth_datetime = date_string = '2010-01-31'
|
232
232
|
|
233
|
-
record.birth_datetime_before_type_cast.
|
233
|
+
expect(record.birth_datetime_before_type_cast).to eq date_string
|
234
234
|
end
|
235
235
|
end
|
236
236
|
|
@@ -238,7 +238,7 @@ describe ValidatesTimeliness, 'ActiveRecord' do
|
|
238
238
|
|
239
239
|
context "define_attribute_methods" do
|
240
240
|
it "returns a falsy value if the attribute methods have already been generated" do
|
241
|
-
Employee.define_attribute_methods.
|
241
|
+
expect(Employee.define_attribute_methods).to be_falsey
|
242
242
|
end
|
243
243
|
end
|
244
244
|
end
|
@@ -25,15 +25,15 @@ describe ValidatesTimeliness::Validator, ":after option" do
|
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should not be valid for same time as restriction" do
|
28
|
-
invalid!(:birth_time, Time.
|
28
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 12, 0, 0), 'must be after 12:00:00')
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should not be valid for time before restriction" do
|
32
|
-
invalid!(:birth_time, Time.
|
32
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 11, 59, 59), 'must be after 12:00:00')
|
33
33
|
end
|
34
34
|
|
35
35
|
it "should be valid for time after restriction" do
|
36
|
-
valid!(:birth_time, Time.
|
36
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 12, 00, 01))
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
@@ -25,15 +25,15 @@ describe ValidatesTimeliness::Validator, ":before option" do
|
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should not be valid for time after restriction" do
|
28
|
-
invalid!(:birth_time, Time.
|
28
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 12, 00, 01), 'must be before 12:00:00')
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should not be valid for same time as restriction" do
|
32
|
-
invalid!(:birth_time, Time.
|
32
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 12, 0, 0), 'must be before 12:00:00')
|
33
33
|
end
|
34
34
|
|
35
35
|
it "should be valid for time before restriction" do
|
36
|
-
valid!(:birth_time, Time.
|
36
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 11, 59, 59))
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
@@ -2,7 +2,7 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe ValidatesTimeliness::Validator, ":is_at option" do
|
4
4
|
before do
|
5
|
-
Timecop.freeze(Time.
|
5
|
+
Timecop.freeze(Time.local(2010, 1, 1, 0, 0, 0))
|
6
6
|
end
|
7
7
|
|
8
8
|
describe "for date type" do
|
@@ -29,15 +29,15 @@ describe ValidatesTimeliness::Validator, ":is_at option" do
|
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should not be valid for time before restriction" do
|
32
|
-
invalid!(:birth_time, Time.
|
32
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 11, 59, 59), 'must be at 12:00:00')
|
33
33
|
end
|
34
34
|
|
35
35
|
it "should not be valid for time after restriction" do
|
36
|
-
invalid!(:birth_time, Time.
|
36
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 12, 00, 01), 'must be at 12:00:00')
|
37
37
|
end
|
38
38
|
|
39
39
|
it "should be valid for same time as restriction" do
|
40
|
-
valid!(:birth_time, Time.
|
40
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 12, 0, 0))
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
@@ -25,15 +25,15 @@ describe ValidatesTimeliness::Validator, ":on_or_after option" do
|
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should not be valid for time before restriction" do
|
28
|
-
invalid!(:birth_time, Time.
|
28
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 11, 59, 59), 'must be on or after 12:00:00')
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should be valid for time after restriction" do
|
32
|
-
valid!(:birth_time, Time.
|
32
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 12, 00, 01))
|
33
33
|
end
|
34
34
|
|
35
35
|
it "should be valid for same time as restriction" do
|
36
|
-
valid!(:birth_time, Time.
|
36
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 12, 0, 0))
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
@@ -25,15 +25,15 @@ describe ValidatesTimeliness::Validator, ":on_or_before option" do
|
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should not be valid for time after restriction" do
|
28
|
-
invalid!(:birth_time, Time.
|
28
|
+
invalid!(:birth_time, Time.local(2000, 1, 1, 12, 00, 01), 'must be on or before 12:00:00')
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should be valid for time before restriction" do
|
32
|
-
valid!(:birth_time, Time.
|
32
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 11, 59, 59))
|
33
33
|
end
|
34
34
|
|
35
35
|
it "should be valid for same time as restriction" do
|
36
|
-
valid!(:birth_time, Time.
|
36
|
+
valid!(:birth_time, Time.local(2000, 1, 1, 12, 0, 0))
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|