eyes_core 6.4.2 → 6.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +110 -0
- data/eyes_core.gemspec +1 -1
- data/lib/applitools/core/classic_runner.rb +3 -2
- data/lib/applitools/core/eyes_runner.rb +4 -3
- data/lib/applitools/eyes_core/version.rb +1 -1
- data/lib/applitools/universal_sdk/universal_client.rb +27 -33
- data/lib/applitools/universal_sdk/universal_server.rb +16 -12
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4a55fe3e37a6ab165ac3c832328486c434d88848f8a3dae149bc10d8a9e76484
|
4
|
+
data.tar.gz: f7b40636b778f9998ea614388c7a8451e0ef8bcee11fd9149d8c55da10782674
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: db88887ed469c13a4e6c48b23f8ea1c2eb574f8ac6de9c3ae1cf7f0107a4491f72ac6e7e0a90d60bc4addb9d31643d57b62478c8aa9df373a4290008820b649d
|
7
|
+
data.tar.gz: 7e4da5b53ed86ec84ef524e3752a347f295f141d148ee21dd29ad29fe498a23a937625e0e09eeec975e02ceb33c5ae551deb5b7b51d5de600721ba66089058e6
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,115 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [6.5.0](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_core@6.4.2...ruby/eyes_core@6.5.0) (2024-12-31)
|
4
|
+
|
5
|
+
|
6
|
+
### Features
|
7
|
+
|
8
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
9
|
+
|
10
|
+
|
11
|
+
### Dependencies
|
12
|
+
|
13
|
+
* @applitools/utils bumped to 1.7.7
|
14
|
+
#### Bug Fixes
|
15
|
+
|
16
|
+
* shim process execution functions for browser environment ([#2698](https://github.com/Applitools-Dev/sdk/issues/2698)) ([8d77db4](https://github.com/Applitools-Dev/sdk/commit/8d77db48e1c7fd54cad92c89a819a924255e5868))
|
17
|
+
* @applitools/logger bumped to 2.1.0
|
18
|
+
#### Features
|
19
|
+
|
20
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
* @applitools/dom-snapshot bumped to 4.11.13
|
25
|
+
#### Bug Fixes
|
26
|
+
|
27
|
+
* code scanning issue ([#2687](https://github.com/Applitools-Dev/sdk/issues/2687)) ([f301056](https://github.com/Applitools-Dev/sdk/commit/f301056cccfc9cc0c21ceedbd521d8f4b054f058))
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
* @applitools/socket bumped to 1.2.0
|
32
|
+
#### Features
|
33
|
+
|
34
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
* @applitools/dom-capture bumped to 11.5.3
|
39
|
+
#### Bug Fixes
|
40
|
+
|
41
|
+
* code scanning issue ([#2687](https://github.com/Applitools-Dev/sdk/issues/2687)) ([f301056](https://github.com/Applitools-Dev/sdk/commit/f301056cccfc9cc0c21ceedbd521d8f4b054f058))
|
42
|
+
* @applitools/ufg-client bumped to 1.16.0
|
43
|
+
#### Features
|
44
|
+
|
45
|
+
* deterministic output in offline execution ([#2711](https://github.com/Applitools-Dev/sdk/issues/2711)) ([5e8c7ca](https://github.com/Applitools-Dev/sdk/commit/5e8c7ca43c98e7ba6aed0c1a66c5a60b4001aeff))
|
46
|
+
|
47
|
+
|
48
|
+
#### Bug Fixes
|
49
|
+
|
50
|
+
* code scanning issue ([#2687](https://github.com/Applitools-Dev/sdk/issues/2687)) ([f301056](https://github.com/Applitools-Dev/sdk/commit/f301056cccfc9cc0c21ceedbd521d8f4b054f058))
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
* @applitools/core bumped to 4.28.0
|
55
|
+
#### Features
|
56
|
+
|
57
|
+
* deterministic output in offline execution ([#2711](https://github.com/Applitools-Dev/sdk/issues/2711)) ([5e8c7ca](https://github.com/Applitools-Dev/sdk/commit/5e8c7ca43c98e7ba6aed0c1a66c5a60b4001aeff))
|
58
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
59
|
+
|
60
|
+
|
61
|
+
#### Bug Fixes
|
62
|
+
|
63
|
+
* take snapshots with coded regions on pages that has cross origin frames ([#2705](https://github.com/Applitools-Dev/sdk/issues/2705)) ([5972fec](https://github.com/Applitools-Dev/sdk/commit/5972fec890a1454a9f96c4eddcf17634e72111aa))
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
* @applitools/spec-driver-webdriver bumped to 1.1.22
|
68
|
+
|
69
|
+
* @applitools/spec-driver-selenium bumped to 1.5.93
|
70
|
+
|
71
|
+
* @applitools/screenshoter bumped to 3.10.2
|
72
|
+
|
73
|
+
* @applitools/nml-client bumped to 1.8.21
|
74
|
+
|
75
|
+
* @applitools/tunnel-client bumped to 1.6.0
|
76
|
+
#### Features
|
77
|
+
|
78
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
79
|
+
|
80
|
+
|
81
|
+
|
82
|
+
* @applitools/ec-client bumped to 1.10.0
|
83
|
+
#### Features
|
84
|
+
|
85
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
* @applitools/req bumped to 1.7.6
|
90
|
+
|
91
|
+
* @applitools/image bumped to 1.1.16
|
92
|
+
|
93
|
+
* @applitools/driver bumped to 1.20.2
|
94
|
+
|
95
|
+
* @applitools/spec-driver-puppeteer bumped to 1.4.22
|
96
|
+
|
97
|
+
* @applitools/core-base bumped to 1.22.0
|
98
|
+
#### Features
|
99
|
+
|
100
|
+
* deterministic output in offline execution ([#2711](https://github.com/Applitools-Dev/sdk/issues/2711)) ([5e8c7ca](https://github.com/Applitools-Dev/sdk/commit/5e8c7ca43c98e7ba6aed0c1a66c5a60b4001aeff))
|
101
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
* eyes_universal bumped to 4.28.0
|
106
|
+
#### Features
|
107
|
+
|
108
|
+
* logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
|
3
113
|
## [6.4.2](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_core@6.4.1...ruby/eyes_core@6.4.2) (2024-11-27)
|
4
114
|
|
5
115
|
|
data/eyes_core.gemspec
CHANGED
@@ -38,7 +38,7 @@ Gem::Specification.new do |spec|
|
|
38
38
|
spec.add_dependency 'colorize'
|
39
39
|
spec.add_dependency 'websocket'
|
40
40
|
spec.add_dependency 'sorted_set'
|
41
|
-
spec.add_dependency 'eyes_universal', "= 4.
|
41
|
+
spec.add_dependency 'eyes_universal', "= 4.28.0"
|
42
42
|
|
43
43
|
spec.add_development_dependency 'bundler'
|
44
44
|
spec.add_development_dependency 'rake'
|
@@ -4,8 +4,9 @@ require_relative 'eyes_runner'
|
|
4
4
|
module Applitools
|
5
5
|
class ClassicRunner < EyesRunner
|
6
6
|
attr_accessor :all_test_results, :all_pending_exceptions
|
7
|
-
|
8
|
-
|
7
|
+
|
8
|
+
def initialize(mask_log = nil)
|
9
|
+
super(mask_log)
|
9
10
|
self.all_test_results = []
|
10
11
|
self.all_pending_exceptions = {}
|
11
12
|
end
|
@@ -6,10 +6,11 @@ module Applitools
|
|
6
6
|
attr_accessor :universal_client, :universal_eyes_manager
|
7
7
|
attr_accessor :remove_duplicate_tests
|
8
8
|
|
9
|
-
def initialize
|
9
|
+
def initialize(mask_log = nil)
|
10
10
|
self.batches_server_connectors_map = {}
|
11
11
|
self.universal_client = nil # eyes.open
|
12
12
|
self.universal_eyes_manager = nil # eyes.open
|
13
|
+
@mask_log = mask_log
|
13
14
|
end
|
14
15
|
|
15
16
|
def add_batch(batch_id, &block)
|
@@ -20,9 +21,9 @@ module Applitools
|
|
20
21
|
batches_server_connectors_map.each_value { |v| v.call if v.respond_to? :call }
|
21
22
|
end
|
22
23
|
|
23
|
-
def get_universal_eyes_manager(eyes=nil)
|
24
|
+
def get_universal_eyes_manager(eyes = nil)
|
24
25
|
return universal_eyes_manager if universal_eyes_manager
|
25
|
-
self.universal_client = Applitools::Connectivity::UniversalClient.new(eyes) if universal_client.nil?
|
26
|
+
self.universal_client = Applitools::Connectivity::UniversalClient.new(eyes, @mask_log) if universal_client.nil?
|
26
27
|
self.universal_eyes_manager = universal_client.make_manager(universal_eyes_manager_config.to_hash)
|
27
28
|
end
|
28
29
|
|
@@ -10,7 +10,6 @@ require 'websocket'
|
|
10
10
|
require 'uri'
|
11
11
|
require 'eyes_universal'
|
12
12
|
|
13
|
-
|
14
13
|
module Applitools::Connectivity
|
15
14
|
class UniversalClient
|
16
15
|
|
@@ -41,9 +40,9 @@ module Applitools::Connectivity
|
|
41
40
|
|
42
41
|
attr_accessor :commands_config
|
43
42
|
|
44
|
-
def initialize(eyes=nil)
|
43
|
+
def initialize(eyes = nil, mask_log = nil)
|
45
44
|
# @socket = Applitools::Connectivity::UniversalClientSocket.new
|
46
|
-
prepare_socket(eyes)
|
45
|
+
prepare_socket(eyes, mask_log)
|
47
46
|
# store on open for next check calls
|
48
47
|
@open_config = nil
|
49
48
|
@commands_config = {
|
@@ -74,7 +73,7 @@ module Applitools::Connectivity
|
|
74
73
|
ec_client_settings = {}
|
75
74
|
ec_client_settings[:options] = ec_client_capabilities unless ec_client_capabilities.empty?
|
76
75
|
ec_client_settings[:proxy] = proxy unless proxy.nil?
|
77
|
-
make_ec_client_request_payload = {settings: ec_client_settings}
|
76
|
+
make_ec_client_request_payload = { settings: ec_client_settings }
|
78
77
|
# interface GetECClientRequestPayload {
|
79
78
|
# settings?: ECClientSettings
|
80
79
|
# }
|
@@ -92,7 +91,6 @@ module Applitools::Connectivity
|
|
92
91
|
Applitools::UniversalEyesManager.new(eyes_manager, self)
|
93
92
|
end
|
94
93
|
|
95
|
-
|
96
94
|
def core_make_manager(eyes_manager_config)
|
97
95
|
# interface MakeManagerRequestPayload {
|
98
96
|
# type: 'ufg' | 'classic'
|
@@ -155,9 +153,6 @@ module Applitools::Connectivity
|
|
155
153
|
commands_config[:screenshot] = commands_config[:check]
|
156
154
|
end
|
157
155
|
|
158
|
-
|
159
|
-
|
160
|
-
|
161
156
|
def eyes_manager_make_eyes(manager, driver_config, config)
|
162
157
|
@open_config = config
|
163
158
|
|
@@ -170,7 +165,7 @@ module Applitools::Connectivity
|
|
170
165
|
# }
|
171
166
|
#
|
172
167
|
# type OpenEyesResponsePayload = Ref<Eyes>
|
173
|
-
command_with_result(EYES_MANAGER_MAKE_EYES, {manager: manager, target: driver_config, settings: commands_config[:open], config: commands_config})
|
168
|
+
command_with_result(EYES_MANAGER_MAKE_EYES, { manager: manager, target: driver_config, settings: commands_config[:open], config: commands_config })
|
174
169
|
end
|
175
170
|
|
176
171
|
def eyes_manager_close_all_eyes(manager, remove_duplicate_tests)
|
@@ -194,8 +189,8 @@ module Applitools::Connectivity
|
|
194
189
|
# missing: number
|
195
190
|
# matches: number
|
196
191
|
# }
|
197
|
-
settings = {throwErr: false, removeDuplicateTests: remove_duplicate_tests}
|
198
|
-
command_with_result(EYES_MANAGER_CLOSE_ALL_EYES, {manager: manager, settings: settings})
|
192
|
+
settings = { throwErr: false, removeDuplicateTests: remove_duplicate_tests }
|
193
|
+
command_with_result(EYES_MANAGER_CLOSE_ALL_EYES, { manager: manager, settings: settings })
|
199
194
|
end
|
200
195
|
|
201
196
|
def eyes_get_results(eyes)
|
@@ -205,8 +200,8 @@ module Applitools::Connectivity
|
|
205
200
|
# }
|
206
201
|
#
|
207
202
|
# type GetEyesResultsResponsePayload = TestResult[]
|
208
|
-
settings = {throwErr: false}
|
209
|
-
command_with_result(EYES_GET_RESULTS, {eyes: eyes, settings: settings})
|
203
|
+
settings = { throwErr: false }
|
204
|
+
command_with_result(EYES_GET_RESULTS, { eyes: eyes, settings: settings })
|
210
205
|
end
|
211
206
|
|
212
207
|
def eyes_check(eyes, settings, image_target = {})
|
@@ -218,7 +213,7 @@ module Applitools::Connectivity
|
|
218
213
|
# }
|
219
214
|
#
|
220
215
|
# type CheckResponsePayload = CheckResult[]
|
221
|
-
payload = {eyes: eyes, settings: settings, config: commands_config}
|
216
|
+
payload = { eyes: eyes, settings: settings, config: commands_config }
|
222
217
|
payload[:target] = image_target unless image_target.empty?
|
223
218
|
command_with_result(EYES_CHECK, payload)
|
224
219
|
end
|
@@ -234,7 +229,7 @@ module Applitools::Connectivity
|
|
234
229
|
# [key: string]: Array<{x: number, y: number, width: number, height: number}>
|
235
230
|
# }
|
236
231
|
|
237
|
-
command_with_result(EYES_LOCATE, {target: driver_target, settings: settings, config: commands_config})
|
232
|
+
command_with_result(EYES_LOCATE, { target: driver_target, settings: settings, config: commands_config })
|
238
233
|
end
|
239
234
|
|
240
235
|
def eyes_extract_text_regions(eyes, settings, driver_target)
|
@@ -245,7 +240,7 @@ module Applitools::Connectivity
|
|
245
240
|
# }
|
246
241
|
#
|
247
242
|
# type LocateTextResponsePayload = Record<string, {text: string, x: number, y: number, width: number, height: number}[]>
|
248
|
-
payload = {target: driver_target, settings: settings, config: commands_config}
|
243
|
+
payload = { target: driver_target, settings: settings, config: commands_config }
|
249
244
|
payload.delete(:target) if driver_target.nil? || driver_target.empty?
|
250
245
|
command_with_result(EYES_EXTRACT_TEXT_REGIONS, payload)
|
251
246
|
end
|
@@ -258,7 +253,7 @@ module Applitools::Connectivity
|
|
258
253
|
# }
|
259
254
|
#
|
260
255
|
# type ExtractTextResponsePayload = string[]
|
261
|
-
payload = {target: driver_target, settings: regions, config: commands_config}
|
256
|
+
payload = { target: driver_target, settings: regions, config: commands_config }
|
262
257
|
payload.delete(:settings) if regions.empty?
|
263
258
|
command_with_result(EYES_EXTRACT_TEXT, payload)
|
264
259
|
end
|
@@ -278,7 +273,7 @@ module Applitools::Connectivity
|
|
278
273
|
# "updateBaselineIfNew": true,
|
279
274
|
# "updateBaselineIfDifferent": true
|
280
275
|
# }
|
281
|
-
command_with_result(EYES_CLOSE, {eyes: eyes, settings: settings, config: commands_config})
|
276
|
+
command_with_result(EYES_CLOSE, { eyes: eyes, settings: settings, config: commands_config })
|
282
277
|
end
|
283
278
|
|
284
279
|
def eyes_abort(eyes)
|
@@ -295,7 +290,7 @@ module Applitools::Connectivity
|
|
295
290
|
# "updateBaselineIfNew": true,
|
296
291
|
# "updateBaselineIfDifferent": true
|
297
292
|
# }
|
298
|
-
command_with_result(EYES_ABORT, {eyes: eyes, settings: settings})
|
293
|
+
command_with_result(EYES_ABORT, { eyes: eyes, settings: settings })
|
299
294
|
end
|
300
295
|
|
301
296
|
def core_get_viewport_size(driver)
|
@@ -307,7 +302,7 @@ module Applitools::Connectivity
|
|
307
302
|
# width: number
|
308
303
|
# height: number
|
309
304
|
# }
|
310
|
-
command_with_result(CORE_GET_VIEWPORT_SIZE, {target: driver})
|
305
|
+
command_with_result(CORE_GET_VIEWPORT_SIZE, { target: driver })
|
311
306
|
end
|
312
307
|
|
313
308
|
def core_set_viewport_size(driver, size)
|
@@ -315,10 +310,10 @@ module Applitools::Connectivity
|
|
315
310
|
# target: DriverTarget
|
316
311
|
# size: {width: number, height: number}
|
317
312
|
# }
|
318
|
-
command_with_result(CORE_SET_VIEWPORT_SIZE, {target: driver, size: size})
|
313
|
+
command_with_result(CORE_SET_VIEWPORT_SIZE, { target: driver, size: size })
|
319
314
|
end
|
320
315
|
|
321
|
-
def core_close_batches(close_batch_settings=nil)
|
316
|
+
def core_close_batches(close_batch_settings = nil)
|
322
317
|
# interface CloseBatchRequestPayload {
|
323
318
|
# settings: CloseBatchSettings | CloseBatchSettings[]
|
324
319
|
# }
|
@@ -326,7 +321,7 @@ module Applitools::Connectivity
|
|
326
321
|
batch_ids = [@open_config[:batch][:id]]
|
327
322
|
batch_ids = [close_batch_settings] if close_batch_settings.is_a?(String)
|
328
323
|
batch_ids = close_batch_settings if close_batch_settings.is_a?(Array)
|
329
|
-
optional = [:serverUrl, :apiKey, :proxy].map {|k| [k, @open_config[k]] }.to_h
|
324
|
+
optional = [:serverUrl, :apiKey, :proxy].map { |k| [k, @open_config[k]] }.to_h
|
330
325
|
optional[:eyesServerUrl] = optional.delete(:serverUrl) if optional[:serverUrl] # v4
|
331
326
|
close_batch_settings = { settings: ({ batchIds: batch_ids }.merge(optional).compact) }
|
332
327
|
end
|
@@ -340,11 +335,10 @@ module Applitools::Connectivity
|
|
340
335
|
command_with_result(CORE_DELETE_TEST, delete_test_settings)
|
341
336
|
end
|
342
337
|
|
343
|
-
|
344
338
|
private
|
345
339
|
|
346
|
-
|
347
|
-
|
340
|
+
def prepare_socket(eyes = nil, mask_log = nil)
|
341
|
+
Applitools::EyesUniversal::UniversalServerControl.configure(mask_log)
|
348
342
|
@universal_server_control = Applitools::EyesUniversal::UniversalServerControl.instance
|
349
343
|
@web_socket = @universal_server_control.new_server_socket_connection
|
350
344
|
socket_handshake
|
@@ -377,7 +371,6 @@ module Applitools::Connectivity
|
|
377
371
|
# resolved
|
378
372
|
# end
|
379
373
|
|
380
|
-
|
381
374
|
def socket_handshake
|
382
375
|
socket_uri = "ws://#{@web_socket.remote_address.inspect_sockaddr}/eyes"
|
383
376
|
handshake = WebSocket::Handshake::Client.new(url: socket_uri)
|
@@ -387,7 +380,7 @@ module Applitools::Connectivity
|
|
387
380
|
@handshake_version = handshake.version if handshake.finished? && handshake.valid?
|
388
381
|
end
|
389
382
|
|
390
|
-
def session_init(eyes=nil)
|
383
|
+
def session_init(eyes = nil)
|
391
384
|
sdk_name = Applitools::EyesBase.environment_sdk[:name]
|
392
385
|
sdk_version = Applitools::EyesBase.environment_sdk[:currentVersion]
|
393
386
|
if eyes
|
@@ -424,7 +417,7 @@ module Applitools::Connectivity
|
|
424
417
|
end
|
425
418
|
|
426
419
|
def command(name, payload, key = SecureRandom.uuid)
|
427
|
-
json_data = JSON.generate({name: name, key: key, payload: payload})
|
420
|
+
json_data = JSON.generate({ name: name, key: key, payload: payload })
|
428
421
|
outgoing_frame = WebSocket::Frame::Outgoing::Client.new(version: @handshake_version, data: json_data, type: :text)
|
429
422
|
@web_socket.write(outgoing_frame)
|
430
423
|
end
|
@@ -459,7 +452,7 @@ module Applitools::Connectivity
|
|
459
452
|
puts incoming_payload['message']
|
460
453
|
new_web_socket_result = receive_result(name)
|
461
454
|
result = format_result(name, key, new_web_socket_result)
|
462
|
-
elsif
|
455
|
+
elsif incoming_json['name'] === name && incoming_json['key'] === key
|
463
456
|
incoming_payload = incoming_json['payload']
|
464
457
|
result = incoming_payload.key?('error') ? incoming_payload['error'] : incoming_payload['result']
|
465
458
|
Applitools::Utils.deep_symbolize_keys result
|
@@ -476,7 +469,7 @@ module Applitools::Connectivity
|
|
476
469
|
web_socket_result = receive_result(name)
|
477
470
|
results = convert_web_socket_result(web_socket_result, name)
|
478
471
|
|
479
|
-
this_key_responses, other_responses = results.partition {|h| h['name'] === name && h['key'] === key}
|
472
|
+
this_key_responses, other_responses = results.partition { |h| h['name'] === name && h['key'] === key }
|
480
473
|
process_other_responses other_responses
|
481
474
|
|
482
475
|
if this_key_responses.empty?
|
@@ -484,7 +477,8 @@ module Applitools::Connectivity
|
|
484
477
|
get_command_result(name, key)
|
485
478
|
elsif this_key_responses.size === 1
|
486
479
|
convert_responses(this_key_responses)
|
487
|
-
else
|
480
|
+
else
|
481
|
+
# size > 1
|
488
482
|
raise Applitools::EyesError.new "Result mismatch : #{name} #{key} (#{this_key_responses})"
|
489
483
|
end
|
490
484
|
end
|
@@ -496,7 +490,7 @@ module Applitools::Connectivity
|
|
496
490
|
until (decoded_frame = encoded_frame.next).nil?
|
497
491
|
decoded_frames.push(decoded_frame)
|
498
492
|
end
|
499
|
-
decoded_frames.map {|frame| JSON.parse(frame.to_s)}
|
493
|
+
decoded_frames.map { |frame| JSON.parse(frame.to_s) }
|
500
494
|
end
|
501
495
|
|
502
496
|
def process_other_responses(other_responses)
|
@@ -45,20 +45,24 @@ module Applitools::Connectivity
|
|
45
45
|
|
46
46
|
def filename
|
47
47
|
return 'eyes-universal-win.exe' if Gem.win_platform?
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
'eyes-universal-linux'
|
48
|
+
|
49
|
+
platform = RUBY_PLATFORM.downcase
|
50
|
+
|
51
|
+
if platform.include?('darwin')
|
52
|
+
return 'eyes-universal-macos'
|
53
|
+
elsif platform.include?('linux')
|
54
|
+
if platform.include?('arm64') || platform.include?('aarch64')
|
55
|
+
return 'eyes-universal-linux-arm64'
|
56
|
+
elsif platform.include?('musl')
|
57
|
+
return 'eyes-universal-alpine'
|
59
58
|
else
|
60
|
-
|
59
|
+
return 'eyes-universal-linux'
|
60
|
+
end
|
61
|
+
elsif platform.match?(/mswin|mingw|windows/)
|
62
|
+
return 'eyes-universal-win.exe'
|
61
63
|
end
|
64
|
+
|
65
|
+
raise "Unsupported platform: #{RUBY_PLATFORM}"
|
62
66
|
end
|
63
67
|
|
64
68
|
def server_libname
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eyes_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Applitools Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-12-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -114,14 +114,14 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - '='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 4.
|
117
|
+
version: 4.28.0
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - '='
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 4.
|
124
|
+
version: 4.28.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: bundler
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|