test_joska 1.0.5 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4debd729ecf2884551cb92d300a6cc4f8fd925366bf311952f6db43898ca2185
4
- data.tar.gz: f5d76c501b7ac8847f54010e54effb5ebd7a786c2b54c8377fa0e405a092c65c
3
+ metadata.gz: 167d82045de090e54bf4d22262404a77412d66ab6c232afed644c95ea145ae73
4
+ data.tar.gz: d8db4398d986f6da6d237637c79d33f9908cd7cf1a1f70936e5f35925b809bc2
5
5
  SHA512:
6
- metadata.gz: 23a38727846d84a90adc0dd7e5b85029d66f944e36c8657d5457e6401c9137bf695942196f77b3823e97ec472e969ffd652706c4d64adf146d5d92eb677a80c4
7
- data.tar.gz: 41fd803177e1bcfd2a65bd566410fa55f7a4e0eeb59ead2701b9405ab747a3f6aee14c090b9c7e1ccfc360bae7da03e91ec7eeebd31c6365855de2e803170bc1
6
+ metadata.gz: 4d6ad98de629069ff818479a472028ef430f9e70e77c4f0b845aaf46f35e811458e99590b52b6ebcdde50479bc41424a06a4b1e2188cdeda0d506bd7777fb878
7
+ data.tar.gz: 38f7fa1564334f01c22d9534b828b2af0b44eab595985f6f72987487805e4aed21af5c0765ed23d993ba62c6ced7ecdef87f29c58552115e66e8996be5da6f6b
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- test_joska (1.0.5)
4
+ test_joska (1.0.6)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,280 +1,262 @@
1
1
  module TestJoska
2
2
 
3
- class Utils
3
+ @@internal_log = "log"
4
4
 
5
- @standard_endpoint = ""
5
+ # def initialize(options)
6
6
 
7
- @standard_environment = ""
7
+ # @raise_on_error = options["raise_on_error"]
8
8
 
9
- @HEAD = {}
9
+ # @output_url = options["output_url"]
10
10
 
11
- @URL = {}
11
+ # @URL = options["url_parts"]
12
12
 
13
- @internal_log = ""
13
+ # @HEAD = options["headers"]
14
+
15
+ # @standard_endpoint = options["standard_endpoint"]
14
16
 
15
- @url_log = ""
17
+ # @standard_environment = options["standard_environment"]
16
18
 
17
- @raise_on_error = false
19
+ # end
18
20
 
19
- @silent = false
21
+ def jsk_get_log
20
22
 
21
- def jsk_setup(options)
23
+ return @@internal_log
22
24
 
23
- @raise_on_error = options["raise_on_error"]
25
+ end
24
26
 
25
- @output_url = options["output_url"]
27
+ def jsk_log(message)
26
28
 
27
- @URL = options["url_parts"]
29
+ p @@internal_log = "#{@@internal_log}#{message}\n"
28
30
 
29
- @HEAD = options["headers"]
30
-
31
- @standard_endpoint = options["standard_endpoint"]
31
+ end
32
32
 
33
- @standard_environment = options["standard_environment"]
33
+ def jsk_clear_log
34
34
 
35
- end
35
+ @@internal_log = ""
36
36
 
37
- def jsk_get_log
37
+ end
38
38
 
39
- return @internal_log
39
+ def jsk_get_url_log
40
40
 
41
- end
41
+ return @url_log
42
42
 
43
- def jsk_log(message)
43
+ end
44
44
 
45
- p @internal_log = "#{@internal_log}#{message}\n"
45
+ def jsk_clear_url_log
46
46
 
47
- end
47
+ @url_log = ""
48
48
 
49
- def jsk_clear_log
49
+ end
50
+
51
+ def request(method, product, type, details=nil, payload=nil, header_type=nil, endpoint=nil, env=nil)
50
52
 
51
- @internal_log = ""
53
+ endpoint = endpoint ? endpoint : @standard_endpoint
52
54
 
53
- end
55
+ url = urlBuilder(product, type, details, endpoint, env)
54
56
 
55
- def jsk_get_url_log
57
+ header_type ? header = @HEAD[header_type] : header = @HEAD[endpoint]
56
58
 
57
- return @url_log
59
+ payload = payload.to_json if payload
58
60
 
59
- end
61
+ res = ""
60
62
 
61
- def jsk_clear_url_log
63
+ p url
62
64
 
63
- @url_log = ""
65
+ @url_log = "#{@url_log}\n#{method} #{type}: #{url}"
64
66
 
65
- end
66
-
67
- def request(method, product, type, details=nil, payload=nil, header_type=nil, endpoint=nil, env=nil)
67
+ @url_log = "#{@url_log}\nPayload: #{payload}" if payload && type != "login"
68
68
 
69
- endpoint = endpoint ? endpoint : @standard_endpoint
69
+ RestClient::Request.execute(method: method, url: url, headers: header, payload: payload, timeout: 90) do |response|
70
70
 
71
- url = urlBuilder(product, type, details, endpoint, env)
71
+ if response.code != 200
72
72
 
73
- header_type ? header = @HEAD[header_type] : header = @HEAD[endpoint]
73
+ begin
74
74
 
75
- payload = payload.to_json if payload
75
+ response = JSON.parse(response)
76
76
 
77
- res = ""
77
+ rescue
78
78
 
79
- p url
79
+ p "Não possível converter para json"
80
80
 
81
- @url_log = "#{@url_log}\n#{method} #{type}: #{url}"
81
+ end
82
+
83
+ raise "Erro no serviço #{type}, codigo: #{response.code} \nURL: #{url} \nResposta: #{response}"
82
84
 
83
- @url_log = "#{@url_log}\nPayload: #{payload}" if payload && type != "login"
85
+ end
84
86
 
85
- RestClient::Request.execute(method: method, url: url, headers: header, payload: payload, timeout: 90) do |response|
87
+ res = response
86
88
 
87
- if response.code != 200
89
+ end
88
90
 
89
- begin
91
+ begin
90
92
 
91
- response = JSON.parse(response)
93
+ return JSON.parse(res)
92
94
 
93
- rescue
95
+ rescue
94
96
 
95
- p "Não possível converter para json"
97
+ raise "Problema em converter a resposta #{response}" if res != ""
96
98
 
97
- end
98
-
99
- raise "Erro no serviço #{type}, codigo: #{response.code} \nURL: #{url} \nResposta: #{response}"
99
+ end
100
100
 
101
- end
101
+ end
102
102
 
103
- res = response
103
+ def urlBuilder(product, type, details, endpoint, env=nil)
104
104
 
105
- end
105
+ env = env ? env : @standard_environment
106
106
 
107
- begin
107
+ details = "" if !details
108
108
 
109
- return JSON.parse(res)
109
+ details = [details] if !details.kind_of?(Array)
110
110
 
111
- rescue
111
+ url = @URL[product]["base"]["#{env}_#{endpoint}"]
112
112
 
113
- raise "Problema em converter a resposta #{response}" if res != ""
113
+ if !@URL[product]["path"][type].kind_of?(Array)
114
114
 
115
- end
115
+ return "#{url}#{@URL[product]["path"][type]}#{details[0]}"
116
116
 
117
- end
117
+ else
118
118
 
119
- def urlBuilder(product, type, details, endpoint, env=nil)
119
+ query_pos = 0
120
120
 
121
- env = env ? env : @standard_environment
121
+ @URL[product]["path"][type].each do |query|
122
122
 
123
- details = "" if !details
123
+ if details[query_pos] && details[query_pos] != ""
124
124
 
125
- details = [details] if !details.kind_of?(Array)
125
+ query = query[0] if query.kind_of?(Array)
126
126
 
127
- url = @URL[product]["base"]["#{env}_#{endpoint}"]
127
+ url = "#{url}#{query}#{details[query_pos]}"
128
128
 
129
- if !@URL[product]["path"][type].kind_of?(Array)
129
+ else
130
130
 
131
- return "#{url}#{@URL[product]["path"][type]}#{details[0]}"
131
+ query.kind_of?(Array) ? url = "#{url}#{query[0]}#{query[1]}" : url = "#{url}#{query}"
132
132
 
133
- else
133
+ end
134
134
 
135
- query_pos = 0
135
+ query_pos += 1
136
136
 
137
- @URL[product]["path"][type].each do |query|
137
+ end
138
138
 
139
- if details[query_pos] && details[query_pos] != ""
139
+ return url
140
140
 
141
- query = query[0] if query.kind_of?(Array)
141
+ end
142
142
 
143
- url = "#{url}#{query}#{details[query_pos]}"
143
+ end
144
144
 
145
- else
145
+ def rateTokenBuilder(rateToken)
146
146
 
147
- query.kind_of?(Array) ? url = "#{url}#{query[0]}#{query[1]}" : url = "#{url}#{query}"
147
+ token_decoded = Base64.decode64(rateToken).gsub(" ", "").gsub("/>", "").gsub("<rateToken", "").gsub("=", "").split('"')
148
148
 
149
- end
149
+ built_token = {}
150
150
 
151
- query_pos += 1
151
+ cur_part = 0
152
152
 
153
- end
153
+ while cur_part < token_decoded.count do
154
154
 
155
- return url
155
+ built_token[token_decoded[cur_part]] = token_decoded[cur_part + 1]
156
156
 
157
- end
157
+ cur_part += 2
158
158
 
159
159
  end
160
160
 
161
- def rateTokenBuilder(rateToken)
161
+ built_token
162
162
 
163
- token_decoded = Base64.decode64(rateToken).gsub(" ", "").gsub("/>", "").gsub("<rateToken", "").gsub("=", "").split('"')
164
-
165
- built_token = {}
166
-
167
- cur_part = 0
168
-
169
- while cur_part < token_decoded.count do
170
-
171
- built_token[token_decoded[cur_part]] = token_decoded[cur_part + 1]
172
-
173
- cur_part += 2
174
-
175
- end
176
-
177
- built_token
178
-
179
- end
180
-
181
- def comparePrice(price1, price2, type1, type2)
163
+ end
182
164
 
183
- range = price1.abs * 0.001 > 0.10 ? price1.abs * 0.001 : 0.10
165
+ def comparePrice(price1, price2, type1, type2)
184
166
 
185
- if !(price1.abs-range...price1.abs+range).include?(price2.abs)
167
+ range = price1.abs * 0.001 > 0.10 ? price1.abs * 0.001 : 0.10
186
168
 
187
- error_name = "#{type1} - #{type2}"
169
+ if !(price1.abs-range...price1.abs+range).include?(price2.abs)
188
170
 
189
- error_message = "#{type1}: R$#{price1} / #{type2}: R$#{price2}",
171
+ error_name = "#{type1} - #{type2}"
190
172
 
191
- tempErrorhandler("price", error_name, error_message)
173
+ error_message = "#{type1}: R$#{price1} / #{type2}: R$#{price2}",
192
174
 
193
- raise "Diferença de preço encontrada (#{type1} - #{type2})\n#{error_message}" if @raise_on_error
175
+ tempErrorhandler("price", error_name, error_message)
194
176
 
195
- jsk_log("Diferença de preço encontrada (#{type1} - #{type2})\n#{error_message}")
177
+ raise "Diferença de preço encontrada (#{type1} - #{type2})\n#{error_message}" if @raise_on_error
196
178
 
197
- end
179
+ jsk_log("Diferença de preço encontrada (#{type1} - #{type2})\n#{error_message}")
198
180
 
199
181
  end
200
182
 
183
+ end
201
184
 
202
- def compareValues(value1, value2, message, type1, type2)
203
185
 
204
- if value1 != value2
186
+ def compareValues(value1, value2, message, type1, type2)
205
187
 
206
- value1 = "null" if value1 == nil
188
+ if value1 != value2
207
189
 
208
- value2 = "null" if value2 == nil
190
+ value1 = "null" if value1 == nil
209
191
 
210
- error_name = "#{message} (#{type1} - #{type2})"
192
+ value2 = "null" if value2 == nil
211
193
 
212
- error_message = "#{type1}: #{value1} / #{type2}: #{value2}"
194
+ error_name = "#{message} (#{type1} - #{type2})"
213
195
 
214
- tempErrorhandler("value", error_name, error_message)
196
+ error_message = "#{type1}: #{value1} / #{type2}: #{value2}"
215
197
 
216
- raise "Conflito: #{message} (#{type1} - #{type2})\n(#{error_message})" if @raise_on_error
198
+ tempErrorhandler("value", error_name, error_message)
217
199
 
218
- jsk_log("Conflito: #{message} (#{type1} - #{type2})\n(#{error_message})")
200
+ raise "Conflito: #{message} (#{type1} - #{type2})\n(#{error_message})" if @raise_on_error
219
201
 
220
- end
202
+ jsk_log("Conflito: #{message} (#{type1} - #{type2})\n(#{error_message})")
221
203
 
222
204
  end
223
205
 
224
- def checkFloat value
225
-
226
- true if Float value rescue false
227
-
228
- end
206
+ end
207
+
208
+ def checkFloat value
209
+
210
+ true if Float value rescue false
211
+
212
+ end
229
213
 
230
- def genericComparator object1, object2, context, type1 = "Barramento", type2 = "Micro serviço"
214
+ def genericComparator object1, object2, context, type1 = "Barramento", type2 = "Micro serviço"
231
215
 
232
- if object1.is_a?(Hash) && object2.is_a?(Hash)
233
-
234
- compareValues(object1.keys.count, object2.keys.count, "#{context}_keyCount", type1, type2)
235
-
236
- (object1.keys | object2.keys).each do |key|
237
-
238
- genericComparator(object1[key], object2[key], "#{context}_#{key}", type1, type2)
239
-
240
- end
241
-
242
- elsif object1.is_a?(Array) && object2.is_a?(Array)
243
-
244
- if object1.count != object2.count
245
-
246
- genericComparator(object1[0], object2[0], "#{context}_arrayElement", type1, type2) if object1[0] && object2[0]
247
-
248
- return compareValues(object1.count, object2.count, "#{context}_arrayCount", type1, type2)
249
-
250
- end
251
-
252
- array_count = 0
253
-
254
- while array_count < object1.count do
255
-
256
- genericComparator(object1[array_count], object2[array_count], "#{context}_arrayElement", type1, type2)
257
-
258
- array_count += 1
259
-
260
- end
261
-
262
- elsif (checkFloat(object1) && checkFloat(object2)) && (object1.to_s.include?(".") || object2.to_s.include?("."))
263
-
264
- comparePrice(object1.to_f, object2.to_f, "#{type1}_#{context}", "#{type2}_#{context}")
265
-
266
- elsif context.split("_").last.include?("Token")
267
-
268
- genericComparator(rateTokenBuilder(object1), rateTokenBuilder(object2), "#{context}_decoded", type1, type2)
269
-
270
- else
271
-
272
- compareValues(object1, object2, context, type1, type2)
273
-
216
+ if object1.is_a?(Hash) && object2.is_a?(Hash)
217
+
218
+ compareValues(object1.keys.count, object2.keys.count, "#{context}_keyCount", type1, type2)
219
+
220
+ (object1.keys | object2.keys).each do |key|
221
+
222
+ genericComparator(object1[key], object2[key], "#{context}_#{key}", type1, type2)
223
+
274
224
  end
275
-
225
+
226
+ elsif object1.is_a?(Array) && object2.is_a?(Array)
227
+
228
+ if object1.count != object2.count
229
+
230
+ genericComparator(object1[0], object2[0], "#{context}_arrayElement", type1, type2) if object1[0] && object2[0]
231
+
232
+ return compareValues(object1.count, object2.count, "#{context}_arrayCount", type1, type2)
233
+
234
+ end
235
+
236
+ array_count = 0
237
+
238
+ while array_count < object1.count do
239
+
240
+ genericComparator(object1[array_count], object2[array_count], "#{context}_arrayElement", type1, type2)
241
+
242
+ array_count += 1
243
+
244
+ end
245
+
246
+ elsif (checkFloat(object1) && checkFloat(object2)) && (object1.to_s.include?(".") || object2.to_s.include?("."))
247
+
248
+ comparePrice(object1.to_f, object2.to_f, "#{type1}_#{context}", "#{type2}_#{context}")
249
+
250
+ elsif context.split("_").last.include?("Token")
251
+
252
+ genericComparator(rateTokenBuilder(object1), rateTokenBuilder(object2), "#{context}_decoded", type1, type2)
253
+
254
+ else
255
+
256
+ compareValues(object1, object2, context, type1, type2)
257
+
276
258
  end
277
-
259
+
278
260
  end
279
261
 
280
262
  end
@@ -1,3 +1,3 @@
1
1
  module TestJoska
2
- VERSION = "1.0.5"
2
+ VERSION = "1.0.6"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test_joska
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lucas Diogo Dovas