eyes_core 5.0.0 → 6.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +508 -0
  3. data/Rakefile +35 -0
  4. data/eyes_core.gemspec +60 -0
  5. data/lib/applitools/core/batch_info.rb +2 -0
  6. data/lib/applitools/core/eyes_base.rb +106 -18
  7. data/lib/applitools/core/eyes_base_configuration.rb +9 -3
  8. data/lib/applitools/core/eyes_runner.rb +3 -2
  9. data/lib/applitools/core/test_results.rb +6 -1
  10. data/lib/applitools/core/universal_eyes_checks.rb +2 -1
  11. data/lib/applitools/core/universal_eyes_open.rb +2 -1
  12. data/lib/applitools/eyes_core/version.rb +10 -0
  13. data/lib/applitools/universal_sdk/universal_client.rb +26 -10
  14. data/lib/applitools/universal_sdk/universal_eyes_config.rb +10 -9
  15. data/lib/eyes_core.rb +2 -3
  16. metadata +14 -58
  17. data/ext/eyes_core/extconf.rb +0 -5
  18. data/ext/eyes_core/eyes_core.c +0 -252
  19. data/ext/eyes_core/eyes_core.h +0 -28
  20. data/lib/applitools/appium/android_region_provider.rb +0 -32
  21. data/lib/applitools/appium/android_screenshot.rb +0 -21
  22. data/lib/applitools/appium/driver.rb +0 -12
  23. data/lib/applitools/appium/eyes.rb +0 -189
  24. data/lib/applitools/appium/ios_region_provider.rb +0 -25
  25. data/lib/applitools/appium/ios_screenshot.rb +0 -10
  26. data/lib/applitools/appium/region_provider.rb +0 -51
  27. data/lib/applitools/appium/screenshot.rb +0 -30
  28. data/lib/applitools/appium/target.rb +0 -240
  29. data/lib/applitools/appium/utils.rb +0 -64
  30. data/lib/applitools/calabash/calabash_element.rb +0 -64
  31. data/lib/applitools/calabash/calabash_screenshot_provider.rb +0 -83
  32. data/lib/applitools/calabash/environment_detector.rb +0 -25
  33. data/lib/applitools/calabash/eyes.rb +0 -194
  34. data/lib/applitools/calabash/eyes_calabash_android_screenshot.rb +0 -68
  35. data/lib/applitools/calabash/eyes_calabash_ios_screenshot.rb +0 -30
  36. data/lib/applitools/calabash/eyes_calabash_screenshot.rb +0 -80
  37. data/lib/applitools/calabash/eyes_hooks.rb +0 -51
  38. data/lib/applitools/calabash/eyes_settings.rb +0 -45
  39. data/lib/applitools/calabash/full_page_capture_algorithm/android_scroll_view.rb +0 -95
  40. data/lib/applitools/calabash/full_page_capture_algorithm/base.rb +0 -51
  41. data/lib/applitools/calabash/full_page_capture_algorithm/ios_ui_table_view.rb +0 -150
  42. data/lib/applitools/calabash/full_page_capture_algorithm.rb +0 -26
  43. data/lib/applitools/calabash/os_versions.rb +0 -25
  44. data/lib/applitools/calabash/rspec_matchers.rb +0 -25
  45. data/lib/applitools/calabash/steps/android_eyes_session.rb +0 -37
  46. data/lib/applitools/calabash/steps/android_matchers.rb +0 -36
  47. data/lib/applitools/calabash/steps/eyes_session.rb +0 -42
  48. data/lib/applitools/calabash/steps/eyes_settings.rb +0 -59
  49. data/lib/applitools/calabash/steps/ios_eyes_session.rb +0 -15
  50. data/lib/applitools/calabash/steps/ios_matchers.rb +0 -17
  51. data/lib/applitools/calabash/steps/matchers.rb +0 -71
  52. data/lib/applitools/calabash/target.rb +0 -69
  53. data/lib/applitools/calabash/utils.rb +0 -74
  54. data/lib/applitools/calabash_steps.rb +0 -16
  55. data/lib/applitools/capybara/capybara_settings.rb +0 -25
  56. data/lib/applitools/capybara/driver.rb +0 -39
  57. data/lib/applitools/rspec/target_matcher.rb +0 -25
  58. data/lib/applitools/universal_sdk/executable_finder.rb +0 -57
  59. data/lib/applitools/universal_sdk/universal_server_control.rb +0 -79
  60. data/lib/applitools/version.rb +0 -8
  61. data/lib/eyes_consts.rb +0 -4
  62. data/lib/eyes_rspec.rb +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 427cc6b949eee41b5d27bd6035ab8f45f3e07ab9a223135610abb6686b0dc033
4
- data.tar.gz: dbfea6d80382744eb6b11d73c3af6efaae394c548cd5f40ad1d881496dcb2783
3
+ metadata.gz: 0bd86ce17adc6ff6b590aa8cab01ab5bd432f7bbc1605ce6f2041f1d8524f168
4
+ data.tar.gz: 7d5e42ee68b07d8d3cbd6d2afe704e4d5b25198e40fbde925a632fd92bce08c4
5
5
  SHA512:
6
- metadata.gz: b95422b1a161eac1d25d3d5a6832f7c0adfb5a6c486f677ce846e8b892834f5b6cfbb65343eeaaebb9de6bfb04bd30772a5f5aa3bc058232049defdad1091ed4
7
- data.tar.gz: 30f0a30d3828167b092b9139382232be8e75ca27df58a4942da49a2c64f93efe65a6fdd42b3b145c7b081113f432866fe3d73e5031ba9e4a6c3893c058708127
6
+ metadata.gz: f7f362b0c6ed45cb80a947cdb128e1e6def45a3d9598a61b1acca2670f7c7f8aa69b7bd7d1d3ab332cbb52fb105b80ed4bb19cf7e1f9ab395cc8d59dd5e5e369
7
+ data.tar.gz: 460c358c91c6c5d9c5f2ea3947ccaf5e12bd349949095b0f4d60520f4368b08e9390dc71f8423ef0f8aa74c28e088e5094536265709120d7a72fb4ab7d98eec8
data/CHANGELOG.md ADDED
@@ -0,0 +1,508 @@
1
+ # Changelog
2
+
3
+ ## [6.0.1] (2023-12-13)
4
+ ### Bug Fixes
5
+ * fix code loading error (NameError in environment_sdk)
6
+
7
+ ## [6.0.0] (2023-12-13)
8
+
9
+ ### Dependencies
10
+
11
+ ### Breaking Changes:
12
+ * #### Features
13
+ * Update version of Universal SDK Core to v4
14
+
15
+ * #### Added
16
+ * new api eyes.get_results to get results
17
+
18
+ * #### Removed
19
+ * eyes.checks now returns nil (added new eyes.get_results to get a results)
20
+
21
+ ### Features
22
+ * added notification about outdated sdk version
23
+ * log driver environment info to splank
24
+ * show aborted tests in Eyes dashboard
25
+ * allowed running multiple classic test with different devices for applitoolsified native apps
26
+ * add more logs for tunnel worker
27
+ * added warning when driver used with capabilities that may conflict with applitools lib workflow
28
+ ### Bug Fixes
29
+ * fix custom sequence_name in BatchInfo
30
+ * suppport coded regions with layoutBreakpoints reload
31
+ * update dom-snapshot to support xml pages and parens inside css URLs
32
+ * upgrade dom-capture to get font-family in DOM
33
+ * change expiration time of the tunnel
34
+ * async cache should wait for upload
35
+ * async cache race condition
36
+ * allow css scrolling when taking screenshot of the webview
37
+ * generate safe selectors as close as possible to taking dom snapshot
38
+ * added retries on ufg requests that respond with 503 status code
39
+ * fix incorrect stitchMode mapping in checkSettings
40
+ * handled duplicated style properties in inline style tags
41
+ * fixed issue that caused dom snapshots to be taken for different viewport sizes when layout breakpoints were explicitly turned off
42
+ * remove some connection timeout in case of a long running tasks
43
+ * return result when error in the ufg
44
+ * send devtool commands in chromium
45
+ * preserve css declarations order in dom-snapshot
46
+ * do not block concurrency when server response is 503
47
+ ### Code Refactoring
48
+ * reorganized code between gems
49
+
50
+ ## [5.0.0] - 2023-07-11
51
+ ### Breaking Changes:
52
+ - get_all_test_results return TestResultSummary with additional info
53
+ - TestResults Array now in get_all_test_results.results or can be accessed old-style with get_all_test_results[0]
54
+ - eyes.close always return first result, even when have failed check
55
+ - eyes.abort on closed/aborted eye now return nil
56
+ ### Added
57
+ - Add support for reloading the page when using layout_breakpoints
58
+ - add errors to TestResults
59
+ ### Updated
60
+ - Update version of Universal SDK Core to 3.6.0
61
+ ### Features
62
+ - ability to skip deserialize dom snapshot
63
+ - prevent animated gif images from playing in ufg
64
+ - support custom property per renderer
65
+ ### Bug fixes
66
+ - fixed issue that caused creation of unnecessary tunnels
67
+ - start tunnels with proper regional server
68
+ ## [4.6.3] - 2023-07-04
69
+ ### Updated
70
+ - Update version of Universal SDK Core to 3.4.0
71
+ ### Added
72
+ - Add api for mobile (set_nmg_capabilities, set_mobile_capabilities, use_system_screenshot)
73
+ ### Features
74
+ - Drop support of legacy vhs extraction
75
+ - Add an API to send logEvents
76
+ - Add support for reloading the page when using layoutBreakpoints
77
+ - Fixed issue with failed find element responses in EC
78
+ - Fixed issue when on certain browser versions test didn't target a previously created baseline
79
+ - added a new mode for taking native app screenshots
80
+ ### Bug fixes
81
+ - Increase timeout for rendering results polling
82
+ - Fixed issue when logs are not show up
83
+ - Add isProcess property when calling makeCoreServer
84
+ - Fixed issue with Safari mobile screenshots
85
+ - Fixed issue with default settings in extractText
86
+ - Fixed issue with viewport information extraction when switched to webview
87
+ - apply default scrolling mode
88
+ ## [4.6.2] - 2023-05-10
89
+ ### Added
90
+ - Add remove_duplicate_tests option & set_remove_duplicate_tests method to eyes runner
91
+ ### Updated
92
+ - Update version of Universal SDK Core to 2.5.8
93
+ ### Features
94
+ - Added functional session feature
95
+ - Add a timeout and max concurrency for fetching resources
96
+ ### Bug fixes
97
+ - Fixed issue in dom snapshot that prevented urls that start with a whitespace to be mapped
98
+ - Improved appium prefixed capabilities parsing
99
+ - Fix issue when locate return wrong type of the region, with left and top properties instead of x and y
100
+ - Fixed issue with when webview were wasn't recognized as web compatible world
101
+ - Fixed the issue with session metadata extraction
102
+ - Fixed functional test feature issues in ec client
103
+ - Fixed typo in ec custom property
104
+ - Fixed issue with hanging requests
105
+ - Fixed platform name formatting
106
+ - Prevented driver metadata extraction during check in ufg eyes
107
+ - Fixed dynamic import issue in universal binaries
108
+ - Fixed detection of emulated mobile drivers
109
+ - Remove 'Execution Cloud' custom property
110
+ ## [4.6.1] - 2023-04-12
111
+ ### Changed
112
+ - Packaging server core inside eyes_universal
113
+ ### Updated
114
+ - Update version of Universal SDK Core to 2.4.8
115
+ ### Features
116
+ - Added removeDuplicateTests property to the GetManagerResultsSettings
117
+ - Changed makeManager api to accept settings
118
+ - Improved extraction of nml element
119
+ - Update broker url using last response instead of using driver
120
+ ### Bug fixes
121
+ - Fixed screenshot framing
122
+ - Fixed issue with css fetching for dom capture
123
+ - Fixed issue with emulation driver detection
124
+ - Fixed relative url resolution in css files
125
+ - Added timeout to css fetching during preparing dom capture
126
+ - Improve performance in DOM snapshot
127
+ - Fixed retry interval during poll requests to eyes back-end
128
+ - Fixed issue with concurrency of the renders in ufg mode
129
+ - Fixed issue with concurrency of the renders in ufg mode
130
+ - Fixed ufg concurrency regression
131
+ - Replaced broker url cache with nml element cache
132
+ - Fixed selector transformation for scroll root elements for ufg
133
+ - Upgrade tunnel version
134
+ ## [4.6.0] - 2023-03-06
135
+ ### Changed
136
+ - change server package to @applitools/core
137
+ ### Updated
138
+ - Improve logging in core server
139
+ - Passing density metric for PPI support in the sdk
140
+ ### Added
141
+ - Integrate universal protocol to run core via transport
142
+ - Added Resize stitch mode value
143
+ - Add NML support for Android
144
+ - Add makeECClient api
145
+ ### Bug fixes
146
+ - upgrade dom-snapshot with a fix to CSP
147
+ - Fixed issue when .visualgrid was not added to agent id
148
+ - Fixed issue with aborting ufg tests
149
+ ## [4.5.5] - 2023-01-06
150
+ ### Updated
151
+ - Update version of Universal SDK to 3.2.2
152
+ ## [4.5.4] - 2023-01-04
153
+ ### Updated
154
+ - Update version of Universal SDK to 3.2.1
155
+ - Update arm64-darwin server recognition
156
+ ### Features
157
+ - Filter styles and resources with non-screen media queries
158
+ ### Bug fixes
159
+ - Fixed issue with parsing capabilities for iOS with native app
160
+ ## [4.5.3] - 2022-12-30
161
+ ### Fixed
162
+ - skip yanked gem versions
163
+ ## [4.5.2] - 2022-12-30
164
+ ### Updated
165
+ - Update version of Universal SDK to 3.2.0
166
+ ### Added
167
+ - Add dont_close_batches flag to eyes [Trello 3093](https://trello.com/c/3E0ilb0A)
168
+ ### Features
169
+ - Add server support for arm
170
+ - Additional internal event logs
171
+ ### Bug fixes
172
+ - Fixed OCR functionality with latest eyes server
173
+ - Fixed issue when helper lib inputs were not cleaned up before calling new command
174
+ - Fixed issue with element scroll position not being restored after screenshot is taken on native platforms
175
+ - Handed error during polling in long requests to eyes server
176
+ - Handle fake shadowRoot with UFG
177
+ ## [4.5.1] - 2022-11-28
178
+ ### Fixed
179
+ - releasing as stable all eyes
180
+ ## [4.0.0.alpha-eyes-images] - 2022-11-28
181
+ ### Added
182
+ - eyes_images updated to universal server sdk(v3)
183
+ ### Deprecated (eyes_images)
184
+ - eyes_images inputs Applitools::Screenshot and ChunkyPNG::Image now are image_path and image (examples in spec/images/eyes_images_functional_spec.rb)
185
+ ### Added (eyes_images)
186
+ - eyes_images: Applitools::MatchLevel::IGNORE_COLORS
187
+ ## [4.5.0.alpha] - 2022-11-23
188
+ - Update version of Universal SDK to v3 (sdk: 3.0.2)
189
+ ## [4.4.1] - 2022-10-03
190
+ ### Added
191
+ - Added iPhone 14 and iPhone 14 Pro Max devices [Trello 73](https://trello.com/c/M1YiwtHb)
192
+ ## [4.4.0] - 2022-09-16
193
+ ### Updated
194
+ - Update version of Universal SDK to 2.12.3
195
+ ### Added
196
+ - Created testing client for eyes-universal
197
+ ### Fixed
198
+ - Using lazyLoad.waitingTime as a delay between stitches by default
199
+ - Using proxy while polling for the result of the nml command
200
+ ## [4.3.0] - 2022-09-16
201
+ ### Updated
202
+ - Update version of Universal SDK to 2.12.0
203
+ ### Added
204
+ - Add proxy support when using NML for NMG
205
+ - Add NML NMG support for iOS
206
+ - Added support for lazy loading views in android native apps
207
+ - tests for alpine
208
+ ### Fixed
209
+ - Sending correct commands with android helper lib
210
+ - Fixed issue that prevented NMG from working when NML was enabled
211
+ ## [4.2.0] - 2022-09-05
212
+ ### Removed
213
+ - removed device name Galaxy S8, S8 Plus, Note 8
214
+ ## [4.1.4] - 2022-09-02
215
+ ### Updated
216
+ - Update version of Universal SDK to 2.10.8
217
+ ### Changed
218
+ - U-SDK server spawn once per process
219
+ - U-SDK server shutdown-mode changed
220
+ ## [4.1.4.alpha] - 2022-08-15
221
+ ### Updated
222
+ - Update version of Universal SDK to 2.10.5
223
+ ### Changed
224
+ - ci moved to github
225
+ ## [4.1.3] - 2022-08-04
226
+ ### Added
227
+ - add enum for edge-2 (EDGE_CHROMIUM_TWO_VERSIONS_BACK)
228
+ - Android 12 device name [Trello 54](https://trello.com/c/SZAPDKSI)
229
+ ### Updated
230
+ - Update version of Universal SDK to 2.10.3
231
+ ## [4.1.2] - 2022-07-07
232
+ ### Added
233
+ - add padding support for regions [Trello 2929](https://trello.com/c/kHbnEdC7), [Trello 42](https://trello.com/c/PYKqJLbg)
234
+ - add custom region id support for regions [Trello 47](https://trello.com/c/pv51sCYA)
235
+ ### Updated
236
+ - Update version of Universal SDK to 2.9.5
237
+ ### Fixed
238
+ - fix freeze in communication with universal server
239
+ - fix floating region bounds option(as 4 numbers) parsing
240
+ ## [4.1.1] - 2022-06-16
241
+ ### Added
242
+ - add support lazy loading as part of the check-api [Trello](https://trello.com/c/BIHFMhVk)
243
+ ### Updated
244
+ - Update version of Universal SDK to 2.8.0
245
+ ## [4.1.0] - 2022-06-16
246
+ ### Removed
247
+ - alpha flag from version number
248
+ ## [4.1.0.alpha] - 2022-06-13
249
+ ### Updated
250
+ - Update version of Universal SDK to 2.7.2
251
+ ## Removed
252
+ - removed eventmachine from eyes_core
253
+ ## [4.0.5.4] - 2022-06-10
254
+ ### Updated
255
+ - Update version of Universal SDK to 2.7.1
256
+ ### Fixed
257
+ - Fix default boolean field transition to server(like full page screenshot)
258
+ ## [4.0.5.3] - 2022-06-02
259
+ ### Updated
260
+ - Update version of Universal SDK to 2.5.19
261
+ ### Fixed
262
+ - fix ruby-3.1 installation collision
263
+ ## [4.0.5.2] - 2022-05-24
264
+ ### Updated
265
+ - Update version of Universal SDK to 2.5.17
266
+ ### Fixed
267
+ - Fix closing batches with closeManager
268
+ ## Removed
269
+ - removed nokogiri frozen version
270
+ - remove old&unused js(now processed by universal server)
271
+ ## [4.0.5.1] - 2022-05-18
272
+ ### Fixed
273
+ - Fix wrong gem yank
274
+ ## [4.0.5] - 2022-05-18
275
+ ### Updated
276
+ - Update version of Universal SDK to 2.5.11
277
+ ### Fixed
278
+ - Fix for default notify_on_completion value(moved to universal server)
279
+ ## [4.0.4] - 2022-05-13
280
+ ### Fixed
281
+ - Fix for mingw
282
+ ## [4.0.3] - 2022-05-13
283
+ ### Updated
284
+ - Update version of Universal SDK to 2.5.7
285
+ ### Added
286
+ - added api: wait_before_capture, page_id
287
+ - api for native ufg: add_mobile_device, add_mobile_devices
288
+ - new ios devices
289
+ - AndroidDeviceName and AndroidDeviceInfo
290
+ ### Fixed
291
+ - Fix installing universal server issues on windows
292
+ - fix getting connection info for universal server on ci
293
+ ## Removed
294
+ - png processing lib dependecies
295
+ ## [4.0.2] - 2022-02-08
296
+ ### Updated
297
+ - Update version of Universal SDK to 1.0.9
298
+ ### Fixed
299
+ - Fix installing issues with latest ruby version and installing on windows
300
+ ## [4.0.1] - 2022-02-08 - unreleased
301
+ ### Updated
302
+ - Update version of Universal SDK to 1.0.7
303
+ ## [4.0.0] - 2022-01-24
304
+ ### Changed
305
+ - Library is now based on Universal SDK
306
+ ## [3.18.4] - 2021-08-31
307
+ ### Fixed
308
+ - Fix Appium runner option [Trello 2697](https://trello.com/c/F6dLF1VF)
309
+ - Fix parsing css transition [Trello 2647](https://trello.com/c/CIzoKPNY)
310
+ - Fix require warning: No such file or directory @ dir_chdir - lib/applitools/selenium/scripts/node_modules [Trello 2148](https://trello.com/c/j5sAPSBa)
311
+ ## [3.18.3] - 2021-06-24
312
+ ### Added
313
+ - Support cross origin iframes in UFG [Trello 2259](https://trello.com/c/iJKPvd75), [Trello 2584](https://trello.com/c/QyLzmnGl)
314
+ ## [3.18.2] - 2021-05-05
315
+ ### Added
316
+ - Support variation_group_id and agentRunId [Trello 2527](https://trello.com/c/6SyxJXVZ)
317
+ ## [3.18.1] - 2021-04-28
318
+ ### Added
319
+ - Allow defining custom properties at the batch level [Trello 2445](https://trello.com/c/IKTydXLv)
320
+ ## [3.18.0] - 2021-04-20
321
+ ### Fixed
322
+ - Fix Selenium and Appium libraries conflict [Trello 2500](https://trello.com/c/UOwzI2s8)
323
+ ## Deprecated
324
+ - Ruby 1.9 support for Appium lib (Requirement 2.2+)
325
+ ## [3.17.23] - 2021-01-22
326
+ ### Fixed
327
+ - Fix viewport rect of a native app at some android devices [Trello 2079](https://trello.com/c/sQJLgtUL)
328
+ ### Updated
329
+ - Update Ruby Coverege Tests to v2
330
+ ## [3.17.22] - 2021-01-12
331
+ ### Added
332
+ - Supporting check full element with ufg [Trello 2145](https://trello.com/c/8tPAnz66)
333
+ ### Updated
334
+ - Supporting iPhone 12 in `IosDeviceName` class. [Trello 2269](https://trello.com/c/yWFy2pRE)
335
+ ### Fixed
336
+ - Restart on calling eyes.open with started driver [Trello 2162](https://trello.com/c/1SCQUUnW), [Trello 2233](https://trello.com/c/yPY3jhjW)
337
+ ## [3.17.21] - 2020-08-20
338
+ ### added
339
+ - UFG: the ability to set :visual_grid_options for the UFG SDK (Both globally and through the fluent interface) [Trello_2089](https://trello.com/c/d4zggQes/2089-ufg-sdks-visualgridoptionspolyfilladoptedstylesheets)
340
+ ## [3.17.20] - 2020-08-20
341
+ ### fixed
342
+ - Skip resources list: the errorStatusCode is passed to the server for UFG resources (if present) [Trello_2101](https://trello.com/c/vw3Ag8eO/2101-sdk-doesnt-pass-errorstatuscode-for-ufg-resources-if-an-error-occurred)
343
+ ## [3.17.19] - 2020-08-18
344
+ ### Updated
345
+ - Skip resources list for UFG is implemented [Trello_1974](https://trello.com/c/44xq8dze/1974-dom-snapshot-should-accept-a-skip-list-for-fetched-resources)
346
+ ## [3.17.18] - 2020-08-01
347
+ ### Fixed
348
+ - appium region screenshot issue [Trello_1996](https://trello.com/c/bmD4fCbs/1996-appium-native-ruby-error-with-png-signature-for-targetregion)
349
+ ## [3.17.17] - 2020-07-29
350
+ ### Fixed
351
+ - The availability to set :notify_on_completion manually for Applitools::BatchInfo. [Trello_2012](https://trello.com/c/OdYXtkFI/2012-batch-sequence-and-batch-notifications-are-not-working-in-the-ruby-selenium-sdk)
352
+ ### Updated
353
+ - Screenshot retry mechanism is now more efficient. [Trello 1866](https://trello.com/c/KyxkI6Bu)
354
+ ## [3.17.16] - 2020-07-16
355
+ ### Fixed
356
+ - The test name is not updated in case of double open->check->close call. [Trello 2011](https://trello.com/c/7UN1AbYU/2011-ruby-ufg-tests-creates-tests-out-of-order-when-classic-eyesopen-is-used)
357
+ ## [3.17.15] - 2020-07-16
358
+ ### Added
359
+ - Added `VisualViewport` for UFG client. [Trello 1957](https://trello.com/c/jWvdBwex/1957-add-visual-viewport-support-in-the-ui-for-mobile-devices)
360
+ ## [3.17.14] - 2020-07-9
361
+ ### Updated
362
+ - Added missing `StitchingService` URI field in `RenderRequest`. [Trello 1988](https://trello.com/c/Yr6EsUlL)
363
+ ## [3.17.13] - 2020-07-03
364
+ ## Fixed
365
+ - eyes_appium: Coded Floating Regions Incorrectly Placed [Trello_1960](https://trello.com/c/j6nJh1LS/1960-ruby-native-app-coded-floating-regions-incorrectly-placed)
366
+ - eyes_images: Simple eyes_images test is broken [Trello_1949](https://trello.com/c/dHQbz96i/1949-eyesimages-seem-to-be-broken)
367
+ ## [3.17.12] - 2020-07-02
368
+ ## Fixed
369
+ - :match_timeout property is moved to configuration object [Trello_1935](https://trello.com/c/2Z070Qgs/1935-ruby-selenium-matchtimeout-not-available-in-the-configuration-object)
370
+ ## [3.17.11] - 2020-06-25
371
+ ## Fixed
372
+ - IosDeviceOrientation is replaced by Orientation [Trello_1944](https://trello.com/c/EzyG7525/1944-ufg-safari-on-ios-orientations-changes)
373
+ ## [Eyes.sdk.ruby 3.17.10] - 2020-06-20
374
+ ## Fixed
375
+ - a configuration shared between Eyes instances in Rspec [Trello_1938](https://trello.com/c/qOQkbDO7/1938-a-configuration-shared-between-eyes-instances-in-rspec)
376
+ ## [Eyes.sdk.ruby 3.17.9] - 2020-06-19
377
+ ## Fixed
378
+ - Call :clone on a NilClass for ruby 2.3 [Trello_1855](https://trello.com/c/LCBhnTMd/1885-selenium-ruby-cant-clone-nilclass)
379
+ ## [Eyes.sdk.ruby 3.17.7] - 2020-06-18
380
+ ## Added
381
+ - eyes.ignore_displacements= and eyes.ignore_displacements methods [Trello_841](https://trello.com/c/uwrYb1Vj/841-add-a-general-method-for-ignoredisplacements?menu=filter&filter=visual%20loca,due:notdue)
382
+ ## Fixed
383
+ - Encoded regions for 'selector' mode [Trello_1915](https://trello.com/c/BQIrbCfC/1915-ruby-ultrafast-grid-incorrect-placement-of-coded-regions-for-targetregion)
384
+ ## [Eyes.sdk.ruby 3.17.6] - 2020-06-16
385
+ ## Fixed
386
+ - config.add_device_emulation(name, orientation) is fixed [Trello_1914](https://trello.com/c/l7WRvhSP/1914-ruby-ultrafast-grid-adddeviceemulation-throws-error-after-upgrading-to-3175?menu=filter&filter=due:notdue)
387
+ ## Added
388
+ - Appium driver support is ectended (Applitools::Appium::Eyes.new(driver: Appium::Driver.new)) [Trello_1913](https://trello.com/c/wQTgRNrN/1913-appium-ruby-regression-unknown-driver-appiumdriver0x00007fbaf9903448-applitoolseyeserror?menu=filter&filter=due:notdue)
389
+ ## [Eyes.sdk.ruby 3.17.5] - 2020-06-15
390
+ ## Added
391
+ - The ability to set :baseline_env_name for DesktopBrowserInfo, IosDeviceInfo and ChromeEmulationInfo
392
+ ## Fixed
393
+ - IosScreenOrientation instead of the IosScreenshotOrientation
394
+ ## [Eyes.sdk.ruby 3.17.4] - 2020-06-11
395
+ ## Fixed
396
+ - restricted to set emulation_info && ios_device_info for DesktopBrowserInfo
397
+ ## [Eyes.sdk.ruby 3.17.3] - 2020-06-06
398
+ ## Deprecated
399
+ - BrowserTypes module is deprecated in a favor of BrowserType
400
+ - Orientations module is deprecated in a favor of Orientation
401
+ ## Fixed
402
+ - IosDeviceOrientation instead of IosDeviceOrientations(plural)
403
+ ## Deprecated
404
+ ## [Eyes.sdk.ruby 3.17.2] - 2020-06-06
405
+ ## Added
406
+ - safari on ios device emulation for UFG [Trello_1872](https://trello.com/c/bykk2rzB/1872-ufg-safari-on-ios-simulators-support)
407
+ ## [Eyes.sdk.ruby 3.17.1] - 2020-05-26
408
+ ## Fixed
409
+ - eyes.properties for VG [Trello_1804](https://trello.com/c/Jt2BYz0e/1804-ruby-selenium-addproperty-method-not-recognized-when-running-with-visualgridrunner)
410
+ - SessionStartInfo parameters were not passed to Json correctly
411
+ ## [Eyes.sdk.ruby 3.17.0] - 2020-05-18
412
+ ## Added
413
+ - eyes.accessibility_validation(Applitools::AccessibilitySettings.new(Applitools::AccessibilityLevel::AA, Applitools::AccessibilityVersion::WCAG_2_0)) - [Trello_1767](https://trello.com/c/gq69woeK/1767-all-sdks-accessibility-accessiblity-guidelines-version-support-and-additional-verifications?menu=filter&filter=due:notdue)
414
+ ## Removed
415
+ - eyes.accessibility_level
416
+ ## [Eyes.sdk.ruby 3.16.16] - 2020-04-28
417
+ ## Added
418
+ - Regions support for eyes_appium (Target#ignore, Target#floating, Target#accessibility, Target#layout, etc.)
419
+ ## [Eyes.sdk.ruby 3.16.15] - 2020-04-24
420
+ ## Deprecated
421
+ - BrowserTypes::EDGE is deprecated. Please change it to either "EDGE_LEGACY" for the legacy version or to "EDGE_CHROMIUM" for the new Chromium-based version. [Trello 1757](https://trello.com/c/LUe43aee/1757-all-ultrafast-sdks-edge-chromium-support)
422
+ ## [Eyes.sdk.ruby 3.16.14] - 2020-04-10
423
+ ## Added
424
+ - new_session? flag is taken from start_session server response with fallback to the status code [Trello_1715](https://trello.com/c/DcVzWbeR/1715-all-sdks-updated-long-running-task-mode-for-startsession)
425
+ ## [Eyes.sdk.ruby 3.16.13] - 2020-04-06
426
+ ## Fixed
427
+ - eyes#hide_scrollbars is true by default [Trello 1592](https://trello.com/c/MXixwLnj/1592-upload-dom-directly-to-azure)
428
+ - eyes#ignore_caret has been included tothe configuration object [Trello)_1706](https://trello.com/c/16JqYlYb/1706-ignorecaret-globally-is-missing-ruby)
429
+ - Irrelevant URLs are excluded from SVG resource parsing results [Trello 1691](https://trello.com/c/EAIpEh8s/1691-ruby-vg-parsing-of-irrelevant-urls-from-css-and-svg-resources)
430
+ ## Added
431
+ - x-applitools-eyes-client header for all API requests [Trello_1697](https://trello.com/c/CzhUxOqE/1697-all-sdks-should-report-their-version-in-all-requests-to-the-eyes-server)
432
+ ## [Eyes.sdk.ruby 3.16.12] - 2020-03-30
433
+ ## Fixed
434
+ - eyes#send_dom didn't work [Trello 1659](https://trello.com/c/9CfD0fhn/1659-disable-dom-capturing-is-not-working-on-the-test-level-ruby)
435
+ ## [Eyes.sdk.ruby 3.16.11] - 2020-03-27
436
+ ## Fixed
437
+ - dom_capture threw an exception on a particular page [Trello 1658](https://trello.com/c/x0uYFwx0/1658-test-is-being-aborted-when-trying-to-capture-dom-ruby)
438
+ ## [Eyes.sdk.ruby 3.16.10] - 2020-03-24
439
+ ## Added
440
+ - The ability to use different Faraday adapters instead the default one [Trello 1683](https://trello.com/c/6IASHoBB/1683-add-http2-support-to-the-communication-library)
441
+ - The ability to set up timeout for HTTP request
442
+ - The ability to set up timeout for an Applitools::Future
443
+ ## [Eyes.sdk.ruby 3.16.9] - 2020-03-17
444
+ ## Fixed
445
+ - Agent ID for eyes_appium set to eyes.appium.ruby/version
446
+ ## [Eyes.sdk.ruby 3.16.8] - 2020-03-13
447
+ ## Fixed
448
+ - SDK fetch resources: the request header 'Accept-Language' is used along with 'User-Agent'
449
+ - Timeout for Thread.join is increased up to Faraday's connection timeout
450
+ - Error handling for resources that failed to fetch
451
+ ## Added
452
+ - Log messages for resource fetching now include the URL and status code
453
+ ## [Eyes.sdk.ruby 3.16.7] - 2020-03-06
454
+ ### Added
455
+ - dom_snapshot is uploaded directly to Azure storage
456
+ ### Fixed
457
+ - dom_snapshot script updated to 7.1.3
458
+ - send_dom is true by default for EyesSelenium
459
+ ## [Eyes.sdk.ruby 3.16.6] - 2020-03-05
460
+ ### Fixed
461
+ - eyes#check might be called as #check(tag, target) as well as #check(target)
462
+ - Selenium Eyes: ignore regions in the current target caused an exception
463
+ ## [Eyes.sdk.ruby 3.16.5] - 2020-03-02
464
+ ### Fixed
465
+ - double slash issue for custom server URL
466
+ ## [Eyes.sdk.ruby 3.16.2] - 2020-02-06
467
+ ### Fixed
468
+ - DefaultMatchSettings being overridden incorrectly by ImageMatchSettings
469
+ ## [Eyes.sdk.ruby 3.16.1] - 2020-01-29
470
+ ### Fixed
471
+ - eyes_appium crashed trying to get viewport_size
472
+ ### Added
473
+ - long_requests are used for start session
474
+ ## [Eyes.sdk.ruby 3.16.0] - 2020-01-24
475
+ ### Added
476
+ - Screenshot uploading direct to cloud store
477
+ ## [Eyes.sdk.ruby 3.15.48] - 2020-01-20
478
+ ### Added
479
+ - New browser types for the VisualGrid (CHROME, CHROME_ONE_VERSION_BACK, CHROME_TWO_VERSIONS_BACK, FIREFOX, FIREFOX_ONE_VERSION_BACK, FIREFOX_TWO_VERSIONS_BACK, SAFARI, SAFARI_ONE_VERSION_BACK, SAFARI_TWO_VERSIONS_BACK, IE_10, IE_11, EDGE)
480
+ ## [Eyes.sdk.ruby 3.15.47] - 2020-01-08
481
+ ### Fixed
482
+ - eyes_images throws "undefined method `each' for nil:NilClass (NoMethodError)"
483
+ ## [Eyes.sdk.ruby 3.15.43] - 2019-12-20
484
+ ### Removed
485
+ - delta compression for screenshots
486
+ ## [Eyes.sdk.ruby 3.15.43] - 2019-12-19
487
+ ### Added
488
+ - eyes.abort_async method implementation
489
+ ### Fixed
490
+ - save_new_tests is true by default
491
+ - tests are aborted instead of being closed on render fail
492
+ ## [Eyes.sdk.ruby 3.15.43] - 2019-12-12
493
+ ### Added
494
+ - Return empty test if the render fails
495
+ - eyes.abort method
496
+ ## [Eyes.sdk.ruby 3.15.42] - 2019-12-10
497
+ ### Fixed
498
+ - CSS paring & fetching font urls
499
+ - VisualGridEyes#config renamed to #configuration
500
+ - VisualGridEyes.configuration returns a clone of a configuration object
501
+ ## [Eyes.sdk.ruby 3.15.41] - 2019-11-06
502
+ ### Fixed
503
+ - Various VG related bugs
504
+ ## [Eyes.sdk.ruby 3.15.39] - 2019-11-06
505
+ ### Added
506
+ - This CHANGELOG file.
507
+ ### Fixed
508
+ - Chrome 78 css stitching bug
data/Rakefile ADDED
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rake/clean'
4
+ require 'securerandom'
5
+
6
+ require 'bundler/gem_helper'
7
+ # Monkey patch the Bundler release class to change tags for eyes_images
8
+ module Bundler
9
+ class GemHelper
10
+
11
+ def version_tag
12
+ ruby_tag = "@applitools/ruby"
13
+ "#{ruby_tag}/#{gemspec.name}@#{version}"
14
+ end
15
+
16
+ end
17
+ end
18
+
19
+ Bundler::GemHelper.install_tasks
20
+
21
+ namespace 'github' do
22
+ task :set_batch_info do
23
+ batch_id = SecureRandom.uuid
24
+ # next if ENV['APPLITOOLS_BATCH_ID'] && !ENV['APPLITOOLS_BATCH_ID'].empty?
25
+ ENV['APPLITOOLS_DONT_CLOSE_BATCHES'] = 'true'
26
+ ENV['APPLITOOLS_BATCH_ID'] = batch_id unless ENV['APPLITOOLS_BATCH_ID'] && !ENV['APPLITOOLS_BATCH_ID'].empty?
27
+ ENV['APPLITOOLS_BATCH_NAME'] = "Eyes Ruby SDK(#{RUBY_VERSION} | #{RUBY_PLATFORM})"
28
+ end
29
+
30
+ task :check do
31
+ puts "Batch ID: #{ENV['APPLITOOLS_BATCH_ID']}"
32
+ puts "Batch NAME: #{ENV['APPLITOOLS_BATCH_NAME']}"
33
+ end
34
+
35
+ end
data/eyes_core.gemspec ADDED
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ # coding: utf-8
4
+ lib = File.expand_path('../lib', __FILE__)
5
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
+
7
+ require 'applitools/eyes_core/version'
8
+
9
+ Gem::Specification.new do |spec|
10
+ spec.name = 'eyes_core'
11
+ spec.version = Applitools::EyesCore::VERSION
12
+ spec.authors = ['Applitools Team']
13
+ spec.email = ['team@applitools.com']
14
+ spec.description = "Don't use it directly, take a look at eyes_selenium, eyes_images or eyes_calabash gems instead."
15
+ spec.summary = 'Core of the Applitools Ruby SDK'
16
+ spec.homepage = 'https://www.applitools.com'
17
+ spec.license = 'Applitools'
18
+
19
+ spec.files = `git ls-files lib/applitools`.split($RS) + [
20
+ 'lib/require_utils.rb',
21
+ 'lib/eyes_core.rb',
22
+ 'CHANGELOG.md',
23
+ 'eyes_core.gemspec',
24
+ 'Rakefile',
25
+ ]
26
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
27
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
28
+
29
+ spec.require_paths = %w(lib)
30
+
31
+ spec.metadata['yard.run'] = 'yri' # use "yard" to build full HTML docs.
32
+
33
+ # spec.add_dependency 'oily_png', '~> 1.2'
34
+ # spec.add_dependency 'chunky_png', '= 1.3.6'
35
+ spec.add_dependency 'faraday'
36
+ spec.add_dependency 'faraday_middleware'
37
+ spec.add_dependency 'faraday-cookie_jar'
38
+
39
+ spec.add_dependency 'oj'
40
+ spec.add_dependency 'colorize'
41
+ spec.add_dependency 'websocket'
42
+ spec.add_dependency 'sorted_set'
43
+ spec.add_dependency 'eyes_universal', "~> #{Applitools::EyesCore::UNIVERSAL_VERSION}"
44
+
45
+ spec.add_development_dependency 'bundler'
46
+ spec.add_development_dependency 'rake'
47
+ spec.add_development_dependency 'rspec', '>= 3'
48
+ spec.add_development_dependency 'rubocop', '<= 0.46.0'
49
+ spec.add_development_dependency 'webdrivers', '~> 5.0'
50
+
51
+ # Exclude debugging support on Travis CI, due to its incompatibility with jruby and older rubies.
52
+ unless ENV['TRAVIS']
53
+ spec.add_development_dependency 'pry'
54
+ spec.add_development_dependency 'pry-byebug'
55
+ spec.add_development_dependency 'byebug'
56
+ spec.add_development_dependency 'pry-doc'
57
+ spec.add_development_dependency 'pry-stack_explorer'
58
+ spec.add_development_dependency 'rb-readline'
59
+ end
60
+ end
@@ -25,9 +25,11 @@ module Applitools
25
25
  sym_args = Applitools::Utils.symbolize_keys args
26
26
  id ||= sym_args[:id]
27
27
  name ||= sym_args[:name]
28
+ sequence_name ||= sym_args[:sequence_name]
28
29
  properties ||= sym_args[:properties]
29
30
  end
30
31
  self.name = name if name
32
+ self.sequence_name = sequence_name if sequence_name
31
33
  @started_at = started_at
32
34
  if id
33
35
  self.id = id