vladimerb 0.0.1 → 0.0.2
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/src/pattern.rb +13 -4
- data/src/required.rb +1 -1
- data/src/vladimerb.rb +4 -4
- data/test/helpers.rb +1 -1
- data/test/pattern.rb +6 -0
- metadata +1 -1
data/src/pattern.rb
CHANGED
@@ -1,20 +1,29 @@
|
|
1
1
|
require_relative "namespace"
|
2
2
|
|
3
3
|
class Vladimerb::Pattern
|
4
|
-
def initialize field_name, regex, options=nil
|
4
|
+
def initialize field_name, regex, options = nil
|
5
5
|
@field_name = field_name
|
6
6
|
@regex = regex
|
7
7
|
@custom_message = options[:message] unless options.nil?
|
8
8
|
end
|
9
9
|
|
10
10
|
def validate record
|
11
|
-
record.send(@field_name)
|
12
|
-
[error_message] :
|
13
|
-
[]
|
11
|
+
check_nil(record.send(@field_name))
|
14
12
|
end
|
15
13
|
|
16
14
|
private
|
17
15
|
|
16
|
+
# TODO: Not happy with this method name
|
17
|
+
def check_nil(value)
|
18
|
+
value.nil? ?
|
19
|
+
[] : check_match(value)
|
20
|
+
end
|
21
|
+
|
22
|
+
def check_match(value)
|
23
|
+
value.match(@regex).nil? ?
|
24
|
+
[error_message] : []
|
25
|
+
end
|
26
|
+
|
18
27
|
def error_message
|
19
28
|
@custom_message.nil? ?
|
20
29
|
@field_name.to_s + " is not formatted correctly." :
|
data/src/required.rb
CHANGED
data/src/vladimerb.rb
CHANGED
@@ -17,8 +17,8 @@ module Vladimerb
|
|
17
17
|
Chain.new tree, validation }
|
18
18
|
end
|
19
19
|
|
20
|
-
def required field_name
|
21
|
-
Required.new field_name
|
20
|
+
def required field_name, options = nil
|
21
|
+
Required.new field_name, options
|
22
22
|
end
|
23
23
|
|
24
24
|
def greater_than field_name, minimum
|
@@ -29,8 +29,8 @@ module Vladimerb
|
|
29
29
|
LambdaValidation.new &block
|
30
30
|
end
|
31
31
|
|
32
|
-
def pattern field_name, regex
|
33
|
-
Pattern.new field_name, regex
|
32
|
+
def pattern field_name, regex, options = nil
|
33
|
+
Pattern.new field_name, regex, options
|
34
34
|
end
|
35
35
|
|
36
36
|
def predicate field_name, method, msg
|
data/test/helpers.rb
CHANGED
data/test/pattern.rb
CHANGED