client-api 0.3.5 → 0.3.6
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 +4 -4
- data/lib/client-api/validator.rb +24 -23
- data/lib/client-api/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 46af95811a5c97fa979f9db48ca3823245458fb92c2a68985d7f97df8d13da4b
|
4
|
+
data.tar.gz: a123355edfe6259438b07f7c3f39aa6587f85347633c41ac44494e3585588221
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 21cd18b3c769375f019df20bec21807a37d083d091c6a53aa942a98a5b8ff91f12c313690abe9447e45ce4f6b42da80d554dd573c48d3dc61e1a95b340253847
|
7
|
+
data.tar.gz: c89d2fb15dd961443ae9cb02d3811f4fb84f4dadb1801ed4257f300d4d5581f67b425a3e692bb8104ffb8ad26ba046fa4000f6b092261f5b1941e260b979a7a5
|
data/lib/client-api/validator.rb
CHANGED
@@ -9,6 +9,10 @@ module ClientApi
|
|
9
9
|
raise('"key": ""'.green + ' field is missing'.red) if data[:key].nil?
|
10
10
|
raise('Need at least one field to validate'.green) if data[:value].nil? && data[:type].nil? && data[:size].nil? && data[:empty].nil? && data[:has_key].nil?
|
11
11
|
|
12
|
+
data.keys.map do |val|
|
13
|
+
raise "invalid key: " + "#{val}".green unless [:key, :operator, :value, :type, :size, :has_key, :empty].include? val
|
14
|
+
end
|
15
|
+
|
12
16
|
value ||= data[:value]
|
13
17
|
operator ||= (data[:operator] || '==').downcase
|
14
18
|
type ||= data[:type]
|
@@ -26,21 +30,25 @@ module ClientApi
|
|
26
30
|
@err_method = @err_method << method
|
27
31
|
|
28
32
|
begin
|
29
|
-
if method.is_a? Integer
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
+
if (method.is_a? Integer) && (has_key != nil)
|
34
|
+
@valid_key = false
|
35
|
+
elsif (!method.is_a? Integer) && (has_key != nil)
|
36
|
+
@valid_key = @resp.has_key? method
|
37
|
+
elsif (method.is_a? Integer) && has_key.nil?
|
38
|
+
raise %[key: ]+ %[#{@err_method.join('->')}].green + %[ does not exist! please check the key once again].red if ((@resp.class != Array) || (method.to_i >= @resp.count))
|
39
|
+
elsif (method.is_a? String) && has_key.nil?
|
40
|
+
raise %[key: ]+ %[#{@err_method.join('->')}].green + %[ does not exist! please check the key once again].red if !@resp.include?(method)
|
33
41
|
end
|
34
42
|
@resp = @resp.send(:[], method)
|
35
43
|
rescue NoMethodError
|
36
|
-
raise %[key: ]+ %[#{@err_method.join('->')}].green + %[ does not exist! please check the key once again].red if
|
44
|
+
raise %[key: ]+ %[#{@err_method.join('->')}].green + %[ does not exist! please check the key once again].red if has_key.nil?
|
37
45
|
end
|
38
46
|
end
|
39
47
|
|
40
48
|
case operator
|
41
49
|
when '=', '==', 'eql', 'eql?', 'equal', 'equal?'
|
42
50
|
# has key validation
|
43
|
-
validate_key(has_key, data) if has_key != nil
|
51
|
+
validate_key(@valid_key, has_key, data) if has_key != nil
|
44
52
|
|
45
53
|
# value validation
|
46
54
|
expect(value).to eq(@resp), lambda {"[key]: \"#{data[:key]}\"".blue + "\n didn't match \n[value]: \"#{data[:value]}\"\n"} if value != nil
|
@@ -60,7 +68,7 @@ module ClientApi
|
|
60
68
|
|
61
69
|
when '!', '!=', '!eql', '!eql?', 'not eql', 'not equal', '!equal?'
|
62
70
|
# has key validation
|
63
|
-
validate_key(has_key, data) if has_key != nil
|
71
|
+
validate_key(@valid_key, has_key, data) if has_key != nil
|
64
72
|
|
65
73
|
# value validation
|
66
74
|
expect(value).not_to eq(@resp), lambda {"[key]: \"#{data[:key]}\"".blue + "\n didn't match \n[value]: \"#{data[:value]}\"\n"} if value != nil
|
@@ -93,7 +101,7 @@ module ClientApi
|
|
93
101
|
message = 'is not lesser than' if operator == '<' || operator == 'less than' || operator == 'lesser than'
|
94
102
|
|
95
103
|
# has key validation
|
96
|
-
validate_key(has_key, data) if has_key != nil
|
104
|
+
validate_key(@valid_key, has_key, data) if has_key != nil
|
97
105
|
|
98
106
|
# value validation
|
99
107
|
expect(@resp.to_i.public_send(operator, value)).to eq(true), "[key]: \"#{data[:key]}\"".blue + "\n #{message} \n[value]: \"#{data[:value]}\"\n" if value != nil
|
@@ -117,7 +125,7 @@ module ClientApi
|
|
117
125
|
|
118
126
|
when 'contains', 'has', 'contains?', 'has?', 'include', 'include?'
|
119
127
|
# has key validation
|
120
|
-
validate_key(has_key, data) if has_key != nil
|
128
|
+
validate_key(@valid_key, has_key, data) if has_key != nil
|
121
129
|
|
122
130
|
# value validation
|
123
131
|
expect(@resp.to_s).to include(value.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n not contains \n[value]: \"#{data[:value]}\"\n"} if value != nil
|
@@ -145,7 +153,7 @@ module ClientApi
|
|
145
153
|
|
146
154
|
when 'not contains', '!contains', 'not include', '!include'
|
147
155
|
# has key validation
|
148
|
-
validate_key(has_key, data) if has_key != nil
|
156
|
+
validate_key(@valid_key, has_key, data) if has_key != nil
|
149
157
|
|
150
158
|
# value validation
|
151
159
|
expect(@resp.to_s).not_to include(value.to_s), lambda {"[key]: \"#{data[:key]} => #{@resp}\"".blue + "\n should not contain \n[value]: \"#{data[:value]}\"\n"} if value != nil
|
@@ -230,21 +238,14 @@ module ClientApi
|
|
230
238
|
end
|
231
239
|
end
|
232
240
|
|
233
|
-
def validate_key(has_key, data)
|
234
|
-
case
|
241
|
+
def validate_key(valid_key, has_key, data)
|
242
|
+
case valid_key
|
235
243
|
when true
|
236
|
-
|
237
|
-
|
238
|
-
rescue NoMethodError
|
239
|
-
raise "[key]: \"#{data[:key]}\"".blue + "\n does not exist"+"\n"
|
240
|
-
end
|
241
|
-
|
244
|
+
expect(valid_key).to eq(true), lambda {"[key]: \"#{data[:key]}\"".blue + "\n does not exist"+"\n"} if has_key == true
|
245
|
+
expect(valid_key).to eq(false), lambda {"[key]: \"#{data[:key]}\"".blue + "\n does exist"+"\n"} if has_key == false
|
242
246
|
when false
|
243
|
-
|
244
|
-
|
245
|
-
rescue NoMethodError
|
246
|
-
true
|
247
|
-
end
|
247
|
+
expect(@resp.nil?).to eq(false), lambda {"[key]: \"#{data[:key]}\"".blue + "\n does not exist"+"\n"} if has_key == true
|
248
|
+
expect(@resp.nil?).to eq(true), lambda {"[key]: \"#{data[:key]}\"".blue + "\n does exist"+"\n"} if has_key == false
|
248
249
|
end
|
249
250
|
end
|
250
251
|
|
data/lib/client-api/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: client-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Prashanth Sams
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-11-
|
11
|
+
date: 2019-11-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|