anodator 0.0.5 → 1.0.0.pre1
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.
- checksums.yaml +7 -0
- data/.gitignore +12 -0
- data/.rspec +1 -0
- data/.travis.yml +5 -0
- data/Gemfile +5 -13
- data/LICENSE.txt +18 -17
- data/{README.ja.rdoc → README.ja.md} +2 -4
- data/README.md +39 -0
- data/Rakefile +3 -47
- data/anodator.gemspec +21 -103
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/lib/anodator/check_result.rb +1 -1
- data/lib/anodator/input_spec.rb +2 -2
- data/lib/anodator/rule.rb +2 -2
- data/lib/anodator/utils.rb +4 -4
- data/lib/anodator/validator/format_validator.rb +1 -1
- data/lib/anodator/version.rb +3 -0
- data/lib/anodator.rb +1 -2
- metadata +70 -131
- data/Gemfile.lock +0 -29
- data/README.rdoc +0 -41
- data/spec/anodator/check_result_spec.rb +0 -101
- data/spec/anodator/checker_spec.rb +0 -273
- data/spec/anodator/input_spec_item_spec.rb +0 -100
- data/spec/anodator/input_spec_spec.rb +0 -584
- data/spec/anodator/message_spec.rb +0 -112
- data/spec/anodator/output_spec_spec.rb +0 -355
- data/spec/anodator/rule_set_spec.rb +0 -190
- data/spec/anodator/rule_spec.rb +0 -278
- data/spec/anodator/utils_spec.rb +0 -48
- data/spec/anodator/validator/base_spec.rb +0 -214
- data/spec/anodator/validator/blank_validator_spec.rb +0 -52
- data/spec/anodator/validator/complex_validator_spec.rb +0 -268
- data/spec/anodator/validator/date_validator_spec.rb +0 -350
- data/spec/anodator/validator/format_validator_spec.rb +0 -158
- data/spec/anodator/validator/inclusion_validator_spec.rb +0 -77
- data/spec/anodator/validator/length_validator_spec.rb +0 -236
- data/spec/anodator/validator/numeric_validator_spec.rb +0 -538
- data/spec/anodator/validator/presence_validator_spec.rb +0 -52
- data/spec/anodator/validator_spec.rb +0 -16
- data/spec/anodator_spec.rb +0 -2
- data/spec/spec_helper.rb +0 -12
@@ -1,158 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
# Anodator::Validator::FormatValidator
|
4
|
-
require "anodator/validator/format_validator"
|
5
|
-
|
6
|
-
describe Anodator::Validator::FormatValidator, ".new" do
|
7
|
-
context "with no parameters" do
|
8
|
-
it "should raise ArgumentError" do
|
9
|
-
lambda {
|
10
|
-
Anodator::Validator::FormatValidator.new
|
11
|
-
}.should raise_error ArgumentError
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
context "with only target parameter" do
|
16
|
-
before(:each) do
|
17
|
-
@validator_new_proc = lambda {
|
18
|
-
Anodator::Validator::FormatValidator.new("1")
|
19
|
-
}
|
20
|
-
end
|
21
|
-
|
22
|
-
it "should not raise error" do
|
23
|
-
@validator_new_proc.should_not raise_error ArgumentError
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
context "with target parameter and :format option" do
|
28
|
-
it "should not raise error" do
|
29
|
-
lambda {
|
30
|
-
Anodator::Validator::FormatValidator.new("1", :format => /^\d+$/)
|
31
|
-
}.should_not raise_error
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
context "with target parameter and :format option by string" do
|
36
|
-
it "should not raise error" do
|
37
|
-
lambda {
|
38
|
-
Anodator::Validator::FormatValidator.new("1", :format => '\d+')
|
39
|
-
}.should_not raise_error
|
40
|
-
end
|
41
|
-
|
42
|
-
it "should :format to regexp option" do
|
43
|
-
Anodator::Validator::FormatValidator.new("1", :format => '\d+').format.should == /\d+/
|
44
|
-
end
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
describe Anodator::Validator::FormatValidator, "#valid?" do
|
49
|
-
context "without :format option" do
|
50
|
-
before(:each) do
|
51
|
-
@validator =
|
52
|
-
Anodator::Validator::FormatValidator.new("1", :allow_blank => false)
|
53
|
-
end
|
54
|
-
|
55
|
-
it "should raise error" do
|
56
|
-
lambda {
|
57
|
-
@validator.valid?
|
58
|
-
}.should raise_error ConfigurationError
|
59
|
-
end
|
60
|
-
end
|
61
|
-
|
62
|
-
context "for digit string with no blank" do
|
63
|
-
before(:each) do
|
64
|
-
@validator =
|
65
|
-
Anodator::Validator::FormatValidator.new("1",
|
66
|
-
:format => /^\d+$/,
|
67
|
-
:allow_blank => false)
|
68
|
-
end
|
69
|
-
|
70
|
-
context "target value is blank" do
|
71
|
-
before(:each) do
|
72
|
-
Anodator::Validator::Base.values = { "1" => "" }
|
73
|
-
end
|
74
|
-
|
75
|
-
it { @validator.should_not be_valid }
|
76
|
-
end
|
77
|
-
|
78
|
-
context "target value is '1'" do
|
79
|
-
before(:each) do
|
80
|
-
Anodator::Validator::Base.values = { "1" => "1" }
|
81
|
-
end
|
82
|
-
|
83
|
-
it { @validator.should be_valid }
|
84
|
-
end
|
85
|
-
|
86
|
-
context "target value is 'some message'" do
|
87
|
-
before(:each) do
|
88
|
-
Anodator::Validator::Base.values = { "1" => "some message" }
|
89
|
-
end
|
90
|
-
|
91
|
-
it { @validator.should_not be_valid }
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
context "for digit string with allow blank" do
|
96
|
-
before(:each) do
|
97
|
-
@validator =
|
98
|
-
Anodator::Validator::FormatValidator.new("1",
|
99
|
-
:format => /^\d+$/,
|
100
|
-
:allow_blank => true)
|
101
|
-
end
|
102
|
-
|
103
|
-
context "target value is blank" do
|
104
|
-
before(:each) do
|
105
|
-
Anodator::Validator::Base.values = { "1" => "" }
|
106
|
-
end
|
107
|
-
|
108
|
-
it { @validator.should be_valid }
|
109
|
-
end
|
110
|
-
|
111
|
-
context "target value is '1'" do
|
112
|
-
before(:each) do
|
113
|
-
Anodator::Validator::Base.values = { "1" => "1" }
|
114
|
-
end
|
115
|
-
|
116
|
-
it { @validator.should be_valid }
|
117
|
-
end
|
118
|
-
|
119
|
-
context "target value is 'some message'" do
|
120
|
-
before(:each) do
|
121
|
-
Anodator::Validator::Base.values = { "1" => "some message" }
|
122
|
-
end
|
123
|
-
|
124
|
-
it { @validator.should_not be_valid }
|
125
|
-
end
|
126
|
-
end
|
127
|
-
|
128
|
-
context "for postal code with not allow blank" do
|
129
|
-
before(:each) do
|
130
|
-
@validator = Anodator::Validator::FormatValidator.new("postal_code",
|
131
|
-
:format => /^\d{3}-\d{4}$/)
|
132
|
-
end
|
133
|
-
|
134
|
-
context "target value is valid" do
|
135
|
-
before(:each) do
|
136
|
-
Anodator::Validator::Base.values = { "postal_code" => "123-1234" }
|
137
|
-
end
|
138
|
-
|
139
|
-
it { @validator.should be_valid }
|
140
|
-
end
|
141
|
-
|
142
|
-
context "target value is blank" do
|
143
|
-
before(:each) do
|
144
|
-
Anodator::Validator::Base.values = { "postal_code" => "" }
|
145
|
-
end
|
146
|
-
|
147
|
-
it { @validator.should_not be_valid }
|
148
|
-
end
|
149
|
-
|
150
|
-
context "target value is invalid" do
|
151
|
-
before(:each) do
|
152
|
-
Anodator::Validator::Base.values = { "postal_code" => "1234567" }
|
153
|
-
end
|
154
|
-
|
155
|
-
it { @validator.should_not be_valid }
|
156
|
-
end
|
157
|
-
end
|
158
|
-
end
|
@@ -1,77 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
# Anodator::Validator::InclusionValidator
|
4
|
-
require "anodator/validator/inclusion_validator"
|
5
|
-
|
6
|
-
include Anodator::Validator
|
7
|
-
|
8
|
-
describe InclusionValidator, ".new" do
|
9
|
-
context "with no parameters" do
|
10
|
-
it "should raise ArgumentError" do
|
11
|
-
lambda {
|
12
|
-
InclusionValidator.new
|
13
|
-
}.should raise_error ArgumentError
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
context "with only target parameter" do
|
18
|
-
it "should not raise error" do
|
19
|
-
lambda {
|
20
|
-
InclusionValidator.new("1")
|
21
|
-
}.should_not raise_error
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
context "with target expression and :in paramerter" do
|
26
|
-
before(:each) do
|
27
|
-
@new_proc = lambda {
|
28
|
-
InclusionValidator.new("1", :in => ["A", "B", "C"])
|
29
|
-
}
|
30
|
-
end
|
31
|
-
|
32
|
-
it "should not raise error" do
|
33
|
-
@new_proc.should_not raise_error
|
34
|
-
end
|
35
|
-
|
36
|
-
it ":in option must have parameter values" do
|
37
|
-
validator = @new_proc.call
|
38
|
-
validator.options[:in].should == ["A", "B", "C"]
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
describe InclusionValidator, "#valid?" do
|
44
|
-
context "with only target parameter" do
|
45
|
-
before(:each) do
|
46
|
-
@validator = InclusionValidator.new("1")
|
47
|
-
end
|
48
|
-
|
49
|
-
it "should raise error" do
|
50
|
-
lambda {
|
51
|
-
@validator.valid?
|
52
|
-
}.should raise_error ConfigurationError
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
context "with target expression and :in paramerter" do
|
57
|
-
before(:each) do
|
58
|
-
@validator = InclusionValidator.new("1", :in => ["A", "B", "C"])
|
59
|
-
end
|
60
|
-
|
61
|
-
context "values for valid" do
|
62
|
-
before(:each) do
|
63
|
-
Base.values = { "1" => "A" }
|
64
|
-
end
|
65
|
-
|
66
|
-
it { @validator.should be_valid }
|
67
|
-
end
|
68
|
-
|
69
|
-
context "values for invalid" do
|
70
|
-
before(:each) do
|
71
|
-
Base.values = { "1" => "D" }
|
72
|
-
end
|
73
|
-
|
74
|
-
it { @validator.should_not be_valid }
|
75
|
-
end
|
76
|
-
end
|
77
|
-
end
|
@@ -1,236 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
# Anodator::Validator::LengthValidator
|
4
|
-
require "anodator/validator/length_validator"
|
5
|
-
|
6
|
-
include Anodator::Validator
|
7
|
-
|
8
|
-
describe LengthValidator, ".new" do
|
9
|
-
context "with no paramerters" do
|
10
|
-
it "should raise error" do
|
11
|
-
lambda {
|
12
|
-
LengthValidator.new()
|
13
|
-
}.should raise_error
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
context "with only target expression" do
|
18
|
-
it "should not raise error" do
|
19
|
-
lambda {
|
20
|
-
LengthValidator.new("1")
|
21
|
-
}.should_not raise_error
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
context "with target expression and :maximum parameters" do
|
26
|
-
before(:each) do
|
27
|
-
@new_proc = lambda {
|
28
|
-
LengthValidator.new("1", :maximum => 10)
|
29
|
-
}
|
30
|
-
end
|
31
|
-
|
32
|
-
it "should not raise error" do
|
33
|
-
@new_proc.should_not raise_error
|
34
|
-
end
|
35
|
-
|
36
|
-
it "should have :maximum option value" do
|
37
|
-
validator = @new_proc.call
|
38
|
-
validator.options[:maximum].value.should == 10
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
context "with target expression and :minimum parameters" do
|
43
|
-
before(:each) do
|
44
|
-
@new_proc = lambda {
|
45
|
-
LengthValidator.new("1", :minimum => 10)
|
46
|
-
}
|
47
|
-
end
|
48
|
-
|
49
|
-
it "should not raise error" do
|
50
|
-
@new_proc.should_not raise_error
|
51
|
-
end
|
52
|
-
|
53
|
-
it "should have :minimum option value" do
|
54
|
-
validator = @new_proc.call
|
55
|
-
validator.options[:minimum].value.should == 10
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
|
-
context "with target expression and :is parameters" do
|
60
|
-
before(:each) do
|
61
|
-
@new_proc = lambda {
|
62
|
-
LengthValidator.new("1", :is => 10)
|
63
|
-
}
|
64
|
-
end
|
65
|
-
|
66
|
-
it "should not raise error" do
|
67
|
-
@new_proc.should_not raise_error
|
68
|
-
end
|
69
|
-
|
70
|
-
it "should have :is option value" do
|
71
|
-
validator = @new_proc.call
|
72
|
-
validator.options[:is].value.should == 10
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
context "with target expression and :in parameters" do
|
77
|
-
before(:each) do
|
78
|
-
@new_proc = lambda {
|
79
|
-
LengthValidator.new("1", :in => 3..6)
|
80
|
-
}
|
81
|
-
end
|
82
|
-
|
83
|
-
it "should not raise error" do
|
84
|
-
@new_proc.should_not raise_error
|
85
|
-
end
|
86
|
-
|
87
|
-
it "should have :in option value" do
|
88
|
-
validator = @new_proc.call
|
89
|
-
validator.options[:in].should == (3..6)
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
93
|
-
|
94
|
-
describe LengthValidator, "#valid?" do
|
95
|
-
context "with only target expression" do
|
96
|
-
before(:each) do
|
97
|
-
@validator = LengthValidator.new("1")
|
98
|
-
Base.values = {
|
99
|
-
"1" => "string",
|
100
|
-
"2" => "string",
|
101
|
-
"3" => "string",
|
102
|
-
"4" => "string",
|
103
|
-
}
|
104
|
-
end
|
105
|
-
|
106
|
-
it "should not raise error" do
|
107
|
-
lambda {
|
108
|
-
@validator.valid?
|
109
|
-
}.should_not raise_error
|
110
|
-
end
|
111
|
-
end
|
112
|
-
|
113
|
-
context "with target expression and :maximum parameters" do
|
114
|
-
before(:each) do
|
115
|
-
@validator = LengthValidator.new("1", :maximum => 10)
|
116
|
-
end
|
117
|
-
|
118
|
-
context "values for valid" do
|
119
|
-
before(:each) do
|
120
|
-
Base.values = {
|
121
|
-
"1" => "1234567890"
|
122
|
-
}
|
123
|
-
end
|
124
|
-
|
125
|
-
it { @validator.should be_valid }
|
126
|
-
end
|
127
|
-
|
128
|
-
context "values for invalid" do
|
129
|
-
before(:each) do
|
130
|
-
Base.values = {
|
131
|
-
"1" => "12345678901"
|
132
|
-
}
|
133
|
-
end
|
134
|
-
|
135
|
-
it { @validator.should_not be_valid }
|
136
|
-
end
|
137
|
-
end
|
138
|
-
|
139
|
-
context "with target expression and :minimum parameters" do
|
140
|
-
before(:each) do
|
141
|
-
@validator = LengthValidator.new("1", :minimum => 10)
|
142
|
-
end
|
143
|
-
|
144
|
-
context "values for valid" do
|
145
|
-
before(:each) do
|
146
|
-
Base.values = {
|
147
|
-
"1" => "1234567890"
|
148
|
-
}
|
149
|
-
end
|
150
|
-
|
151
|
-
it { @validator.should be_valid }
|
152
|
-
end
|
153
|
-
|
154
|
-
context "values for invalid" do
|
155
|
-
before(:each) do
|
156
|
-
Base.values = {
|
157
|
-
"1" => "123456789"
|
158
|
-
}
|
159
|
-
end
|
160
|
-
|
161
|
-
it { @validator.should_not be_valid }
|
162
|
-
end
|
163
|
-
end
|
164
|
-
|
165
|
-
context "with target expression and :is parameters" do
|
166
|
-
before(:each) do
|
167
|
-
@validator = LengthValidator.new("1", :is => 10)
|
168
|
-
end
|
169
|
-
|
170
|
-
context "values for valid" do
|
171
|
-
before(:each) do
|
172
|
-
Base.values = {
|
173
|
-
"1" => "1234567890"
|
174
|
-
}
|
175
|
-
end
|
176
|
-
|
177
|
-
it { @validator.should be_valid }
|
178
|
-
end
|
179
|
-
|
180
|
-
context "values for invalid" do
|
181
|
-
before(:each) do
|
182
|
-
Base.values = {
|
183
|
-
"1" => "123456789"
|
184
|
-
}
|
185
|
-
end
|
186
|
-
|
187
|
-
it { @validator.should_not be_valid }
|
188
|
-
end
|
189
|
-
end
|
190
|
-
|
191
|
-
context "with target expression and :in parameters" do
|
192
|
-
before(:each) do
|
193
|
-
@validator = LengthValidator.new("1", :in => 3..6)
|
194
|
-
end
|
195
|
-
|
196
|
-
context "values for minimum equal valid" do
|
197
|
-
before(:each) do
|
198
|
-
Base.values = {
|
199
|
-
"1" => "123"
|
200
|
-
}
|
201
|
-
end
|
202
|
-
|
203
|
-
it { @validator.should be_valid }
|
204
|
-
end
|
205
|
-
|
206
|
-
context "values for minimum invalid" do
|
207
|
-
before(:each) do
|
208
|
-
Base.values = {
|
209
|
-
"1" => "12"
|
210
|
-
}
|
211
|
-
end
|
212
|
-
|
213
|
-
it { @validator.should_not be_valid }
|
214
|
-
end
|
215
|
-
|
216
|
-
context "values for maximum equal valid" do
|
217
|
-
before(:each) do
|
218
|
-
Base.values = {
|
219
|
-
"1" => "123456"
|
220
|
-
}
|
221
|
-
end
|
222
|
-
|
223
|
-
it { @validator.should be_valid }
|
224
|
-
end
|
225
|
-
|
226
|
-
context "values for maximum invalid" do
|
227
|
-
before(:each) do
|
228
|
-
Base.values = {
|
229
|
-
"1" => "1234567"
|
230
|
-
}
|
231
|
-
end
|
232
|
-
|
233
|
-
it { @validator.should_not be_valid }
|
234
|
-
end
|
235
|
-
end
|
236
|
-
end
|