eyes_selenium 2.39.1 → 3.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/lib/applitools/capybara.rb +1 -1
  3. data/lib/applitools/selenium/border_aware_element_content_location_provider.rb +41 -0
  4. data/lib/applitools/selenium/browser.rb +1 -0
  5. data/lib/applitools/selenium/capybara/capybara_settings.rb +8 -0
  6. data/lib/applitools/selenium/capybara/driver.rb +1 -0
  7. data/lib/applitools/selenium/context_based_scale_provider.rb +36 -0
  8. data/lib/applitools/selenium/css_translate_position_provider.rb +66 -0
  9. data/lib/applitools/selenium/driver.rb +159 -44
  10. data/lib/applitools/selenium/element.rb +100 -8
  11. data/lib/applitools/selenium/element_position_provider.rb +48 -0
  12. data/lib/applitools/selenium/eyes.rb +922 -0
  13. data/lib/applitools/selenium/eyes_target_locator.rb +191 -0
  14. data/lib/applitools/selenium/eyes_web_driver_screenshot.rb +274 -0
  15. data/lib/applitools/selenium/frame.rb +24 -0
  16. data/lib/applitools/selenium/frame_chain.rb +68 -0
  17. data/lib/applitools/selenium/full_page_capture_algorithm.rb +162 -0
  18. data/lib/applitools/selenium/keyboard.rb +1 -0
  19. data/lib/applitools/selenium/match_window_task.rb +0 -197
  20. data/lib/applitools/selenium/mouse.rb +1 -0
  21. data/lib/applitools/selenium/move_to_region_visibility_strategy.rb +33 -0
  22. data/lib/applitools/selenium/nop_region_visibility_strategy.rb +16 -0
  23. data/lib/applitools/selenium/scroll_position_provider.rb +52 -0
  24. data/lib/applitools/selenium/takes_screenshot_image_provider.rb +36 -0
  25. data/lib/applitools/version.rb +1 -1
  26. data/lib/eyes_selenium.rb +19 -30
  27. metadata +24 -254
  28. data/.gitignore +0 -18
  29. data/.rspec +0 -2
  30. data/.rubocop.yml +0 -57
  31. data/.travis.yml +0 -17
  32. data/Gemfile +0 -4
  33. data/LICENSE.txt +0 -13
  34. data/README.md +0 -38
  35. data/Rakefile +0 -11
  36. data/certs/cacert.pem +0 -3557
  37. data/examples/appium_example_script.rb +0 -59
  38. data/examples/capybara_example.rb +0 -82
  39. data/examples/sauce_capybara_example.rb +0 -41
  40. data/examples/sauce_example.rb +0 -34
  41. data/examples/simple_test_script.rb +0 -23
  42. data/examples/watir_test_script.rb +0 -26
  43. data/eyes_selenium.gemspec +0 -89
  44. data/lib/applitools/appium_driver.rb +0 -7
  45. data/lib/applitools/base/batch_info.rb +0 -21
  46. data/lib/applitools/base/dimension.rb +0 -36
  47. data/lib/applitools/base/environment.rb +0 -19
  48. data/lib/applitools/base/image_position.rb +0 -10
  49. data/lib/applitools/base/mouse_trigger.rb +0 -33
  50. data/lib/applitools/base/point.rb +0 -34
  51. data/lib/applitools/base/region.rb +0 -112
  52. data/lib/applitools/base/server_connector.rb +0 -120
  53. data/lib/applitools/base/session.rb +0 -15
  54. data/lib/applitools/base/start_info.rb +0 -34
  55. data/lib/applitools/base/test_results.rb +0 -28
  56. data/lib/applitools/base/text_trigger.rb +0 -22
  57. data/lib/applitools/extensions.rb +0 -17
  58. data/lib/applitools/eyes.rb +0 -460
  59. data/lib/applitools/eyes_logger.rb +0 -38
  60. data/lib/applitools/method_tracer.rb +0 -22
  61. data/lib/applitools/poltergeist/applitools_compatible.rb +0 -28
  62. data/lib/applitools/poltergeist/driver.rb +0 -11
  63. data/lib/applitools/sauce.rb +0 -2
  64. data/lib/applitools/selenium/match_window_data.rb +0 -28
  65. data/lib/applitools/selenium_webdriver.rb +0 -8
  66. data/lib/applitools/utils/image_delta_compressor.rb +0 -148
  67. data/lib/applitools/utils/image_utils.rb +0 -143
  68. data/lib/applitools/utils/utils.rb +0 -49
  69. data/lib/applitools/watir_browser.rb +0 -8
  70. data/spec/driver_passthrough_spec.rb +0 -68
  71. data/spec/fixtures/static_test_file.html +0 -15
  72. data/spec/spec_helper.rb +0 -17
@@ -1,4 +1,5 @@
1
1
  module Applitools::Selenium
2
+ # @!visibility private
2
3
  class Mouse
3
4
  attr_reader :driver, :mouse
4
5
 
@@ -0,0 +1,33 @@
1
+ module Applitools::Selenium
2
+ # @!visibility private
3
+ class MoveToRegionVisibilityStrategy
4
+ extend Forwardable
5
+
6
+ VISIBILITY_OFFSET = 100
7
+
8
+ def_delegators 'Applitools::EyesLogger', :logger, :log_handler, :log_handler=
9
+ attr_accessor :original_position
10
+
11
+ def move_to_region(position_provider, location)
12
+ logger.info 'Getting current position state...'
13
+ self.original_position = position_provider.state
14
+
15
+ dst_x = location.x - VISIBILITY_OFFSET
16
+ dst_y = location.y - VISIBILITY_OFFSET
17
+
18
+ dst_x = 0 if dst_x < 0
19
+ dst_y = 0 if dst_y < 0
20
+
21
+ logger.info "Done! Setting position to #{location}..."
22
+
23
+ position_provider.position = Applitools::Location.new(dst_x, dst_y)
24
+ logger.info 'Done!'
25
+ end
26
+
27
+ def return_to_original_position(position_provider)
28
+ logger.info 'Returning to original position...'
29
+ position_provider.restore_state original_position
30
+ logger.info 'Done!'
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,16 @@
1
+ module Applitools::Selenium
2
+ # @!visibility private
3
+ class NopRegionVisibilityStrategy
4
+ extend Forwardable
5
+
6
+ def_delegators 'Applitools::EyesLogger', :logger, :log_handler, :log_handler=
7
+
8
+ def move_to_region(_position_provider, _location)
9
+ logger.info('Ignored (no op).')
10
+ end
11
+
12
+ def return_to_original_position(_position_provider)
13
+ logger.info('Ignored (no op).')
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,52 @@
1
+ module Applitools::Selenium
2
+ # @!visibility private
3
+ class ScrollPositionProvider
4
+ extend Forwardable
5
+
6
+ def_delegators 'Applitools::EyesLogger', :logger, :log_handler, :log_handler=
7
+
8
+ def initialize(executor)
9
+ self.executor = executor
10
+ end
11
+
12
+ # The scroll position of the current frame
13
+ def current_position
14
+ logger.info 'current_position()'
15
+ result = Applitools::Utils::EyesSeleniumUtils.current_scroll_position(executor)
16
+ logger.info "Current position: #{result}"
17
+ result
18
+ rescue Applitools::EyesDriverOperationException
19
+ raise 'Failed to extract current scroll position!'
20
+ end
21
+
22
+ def state
23
+ current_position
24
+ end
25
+
26
+ def restore_state(value)
27
+ self.position = value
28
+ end
29
+
30
+ def position=(value)
31
+ logger.info "Scrolling to #{value}"
32
+ Applitools::Utils::EyesSeleniumUtils.scroll_to(executor, value)
33
+ logger.info 'Done scrolling!'
34
+ end
35
+
36
+ alias scroll_to position=
37
+
38
+ def entire_size
39
+ result = Applitools::Utils::EyesSeleniumUtils.entire_page_size(executor)
40
+ logger.info "Entire size: #{result}"
41
+ result
42
+ end
43
+
44
+ def force_offset
45
+ Applitools::Location.new(0, 0)
46
+ end
47
+
48
+ private
49
+
50
+ attr_accessor :executor
51
+ end
52
+ end
@@ -0,0 +1,36 @@
1
+ module Applitools::Selenium
2
+ # @!visibility private
3
+ class TakesScreenshotImageProvider
4
+ extend Forwardable
5
+ def_delegators 'Applitools::EyesLogger', :logger, :log_handler, :log_handler=
6
+
7
+ attr_accessor :driver, :name_enumerator
8
+ def initialize(driver, options = {})
9
+ self.driver = driver
10
+ options = { debug_screenshot: false }.merge! options
11
+ self.debug_screenshot = options[:debug_screenshot]
12
+ self.name_enumerator = options[:name_enumerator]
13
+ end
14
+
15
+ def take_screenshot
16
+ logger.info 'Getting screenshot...'
17
+ if debug_screenshot
18
+ screenshot = driver.screenshot_as(:png) do |raw_screenshot|
19
+ save_debug_screenshot(raw_screenshot)
20
+ end
21
+ else
22
+ screenshot = driver.screenshot_as(:png)
23
+ end
24
+ logger.info 'Done getting screenshot! Creating Applitools::Screenshot...'
25
+ Applitools::Screenshot.new screenshot
26
+ end
27
+
28
+ private
29
+
30
+ attr_accessor :debug_screenshot
31
+
32
+ def save_debug_screenshot(screenshot)
33
+ ChunkyPNG::Image.from_string(screenshot).save(name_enumerator.next)
34
+ end
35
+ end
36
+ end
@@ -1,3 +1,3 @@
1
1
  module Applitools
2
- VERSION = '2.39.1'.freeze
2
+ VERSION = '3.0.6'.freeze
3
3
  end
data/lib/eyes_selenium.rb CHANGED
@@ -1,44 +1,33 @@
1
- module Applitools
1
+ require 'eyes_core'
2
+
3
+ module Applitools::Selenium
4
+ # @!visibility private
2
5
  class << self
6
+ # @!visibility private
3
7
  def require_dir(dir)
4
8
  Dir[File.join(File.dirname(File.expand_path(__FILE__)), 'applitools', dir, '*.rb')].sort.each do |f|
5
9
  require f
6
10
  end
7
11
  end
8
12
  end
13
+ end
9
14
 
10
- class EyesError < StandardError; end
11
- class EyesAbort < EyesError; end
12
-
13
- class TestFailedError < StandardError
14
- attr_accessor :test_results
15
-
16
- def initialize(message, test_results = nil)
17
- super(message)
15
+ Applitools::Selenium.require_dir 'selenium'
16
+ Applitools::Selenium.require_dir 'poltergeist'
18
17
 
19
- @test_results = test_results
18
+ if defined? Selenium::WebDriver::Driver
19
+ Selenium::WebDriver::Driver.class_eval do
20
+ def driver_for_eyes(eyes)
21
+ is_mobile_device = capabilities['platformName'] ? true : false
22
+ Applitools::Selenium::Driver.new(eyes, driver: self, is_mobile_device: is_mobile_device)
20
23
  end
21
24
  end
22
-
23
- class NewTestError < TestFailedError; end
24
25
  end
25
26
 
26
- require_relative 'applitools/method_tracer'
27
- require_relative 'applitools/extensions'
28
- require_relative 'applitools/version'
29
-
30
- Applitools.require_dir 'base'
31
- Applitools.require_dir 'utils'
32
- Applitools.require_dir 'selenium'
33
- Applitools.require_dir 'poltergeist'
34
-
35
- require_relative 'applitools/eyes'
36
- require_relative 'applitools/selenium_webdriver'
37
- require_relative 'applitools/appium_driver'
38
- require_relative 'applitools/watir_browser'
39
-
40
- if defined? Sauce
41
- require 'applitools/sauce'
42
- elsif defined? Capybara
43
- require 'applitools/capybara'
27
+ if defined? Appium::Driver
28
+ Appium::Driver.class_eval do
29
+ def driver_for_eyes(eyes)
30
+ Applitools::Selenium::Driver.new(eyes, driver: driver || start_driver, is_mobile_device: true)
31
+ end
32
+ end
44
33
  end
metadata CHANGED
@@ -1,59 +1,31 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eyes_selenium
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.39.1
4
+ version: 3.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Applitools Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-19 00:00:00.000000000 Z
11
+ date: 2017-03-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: selenium-webdriver
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: poltergeist
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '1.9'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '1.9'
41
- - !ruby/object:Gem::Dependency
42
- name: chunky_png
14
+ name: eyes_core
43
15
  requirement: !ruby/object:Gem::Requirement
44
16
  requirements:
45
17
  - - '='
46
18
  - !ruby/object:Gem::Version
47
- version: 1.3.6
19
+ version: 3.0.6
48
20
  type: :runtime
49
21
  prerelease: false
50
22
  version_requirements: !ruby/object:Gem::Requirement
51
23
  requirements:
52
24
  - - '='
53
25
  - !ruby/object:Gem::Version
54
- version: 1.3.6
26
+ version: 3.0.6
55
27
  - !ruby/object:Gem::Dependency
56
- name: faraday
28
+ name: selenium-webdriver
57
29
  requirement: !ruby/object:Gem::Requirement
58
30
  requirements:
59
31
  - - ">="
@@ -67,7 +39,7 @@ dependencies:
67
39
  - !ruby/object:Gem::Version
68
40
  version: '0'
69
41
  - !ruby/object:Gem::Dependency
70
- name: oj
42
+ name: capybara
71
43
  requirement: !ruby/object:Gem::Requirement
72
44
  requirements:
73
45
  - - ">="
@@ -94,239 +66,40 @@ dependencies:
94
66
  - - ">="
95
67
  - !ruby/object:Gem::Version
96
68
  version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: bundler
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: rake
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: capybara
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
- - !ruby/object:Gem::Dependency
140
- name: rspec
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: '3'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: '3'
153
- - !ruby/object:Gem::Dependency
154
- name: appium_lib
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '0'
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- version: '0'
167
- - !ruby/object:Gem::Dependency
168
- name: rubocop
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - "<="
172
- - !ruby/object:Gem::Version
173
- version: 0.46.0
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - "<="
179
- - !ruby/object:Gem::Version
180
- version: 0.46.0
181
- - !ruby/object:Gem::Dependency
182
- name: oily_png
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - "~>"
186
- - !ruby/object:Gem::Version
187
- version: '1.2'
188
- type: :runtime
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - "~>"
193
- - !ruby/object:Gem::Version
194
- version: '1.2'
195
- - !ruby/object:Gem::Dependency
196
- name: pry
197
- requirement: !ruby/object:Gem::Requirement
198
- requirements:
199
- - - ">="
200
- - !ruby/object:Gem::Version
201
- version: '0'
202
- type: :development
203
- prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
205
- requirements:
206
- - - ">="
207
- - !ruby/object:Gem::Version
208
- version: '0'
209
- - !ruby/object:Gem::Dependency
210
- name: pry-byebug
211
- requirement: !ruby/object:Gem::Requirement
212
- requirements:
213
- - - ">="
214
- - !ruby/object:Gem::Version
215
- version: '0'
216
- type: :development
217
- prerelease: false
218
- version_requirements: !ruby/object:Gem::Requirement
219
- requirements:
220
- - - ">="
221
- - !ruby/object:Gem::Version
222
- version: '0'
223
- - !ruby/object:Gem::Dependency
224
- name: byebug
225
- requirement: !ruby/object:Gem::Requirement
226
- requirements:
227
- - - ">="
228
- - !ruby/object:Gem::Version
229
- version: '0'
230
- type: :development
231
- prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- requirements:
234
- - - ">="
235
- - !ruby/object:Gem::Version
236
- version: '0'
237
- - !ruby/object:Gem::Dependency
238
- name: pry-doc
239
- requirement: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - ">="
242
- - !ruby/object:Gem::Version
243
- version: '0'
244
- type: :development
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - ">="
249
- - !ruby/object:Gem::Version
250
- version: '0'
251
- - !ruby/object:Gem::Dependency
252
- name: pry-stack_explorer
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - ">="
256
- - !ruby/object:Gem::Version
257
- version: '0'
258
- type: :development
259
- prerelease: false
260
- version_requirements: !ruby/object:Gem::Requirement
261
- requirements:
262
- - - ">="
263
- - !ruby/object:Gem::Version
264
- version: '0'
265
- description: Applitools Ruby SDK
69
+ description: Applitools Ruby Images SDK
266
70
  email:
267
71
  - team@applitools.com
268
72
  executables: []
269
73
  extensions: []
270
74
  extra_rdoc_files: []
271
75
  files:
272
- - ".gitignore"
273
- - ".rspec"
274
- - ".rubocop.yml"
275
- - ".travis.yml"
276
- - Gemfile
277
- - LICENSE.txt
278
- - README.md
279
- - Rakefile
280
- - certs/cacert.pem
281
- - examples/appium_example_script.rb
282
- - examples/capybara_example.rb
283
- - examples/sauce_capybara_example.rb
284
- - examples/sauce_example.rb
285
- - examples/simple_test_script.rb
286
- - examples/watir_test_script.rb
287
- - eyes_selenium.gemspec
288
- - lib/applitools/appium_driver.rb
289
- - lib/applitools/base/batch_info.rb
290
- - lib/applitools/base/dimension.rb
291
- - lib/applitools/base/environment.rb
292
- - lib/applitools/base/image_position.rb
293
- - lib/applitools/base/mouse_trigger.rb
294
- - lib/applitools/base/point.rb
295
- - lib/applitools/base/region.rb
296
- - lib/applitools/base/server_connector.rb
297
- - lib/applitools/base/session.rb
298
- - lib/applitools/base/start_info.rb
299
- - lib/applitools/base/test_results.rb
300
- - lib/applitools/base/text_trigger.rb
301
76
  - lib/applitools/capybara.rb
302
- - lib/applitools/extensions.rb
303
- - lib/applitools/eyes.rb
304
- - lib/applitools/eyes_logger.rb
305
- - lib/applitools/method_tracer.rb
306
- - lib/applitools/poltergeist/applitools_compatible.rb
307
- - lib/applitools/poltergeist/driver.rb
308
- - lib/applitools/sauce.rb
77
+ - lib/applitools/selenium/border_aware_element_content_location_provider.rb
309
78
  - lib/applitools/selenium/browser.rb
310
79
  - lib/applitools/selenium/capybara/capybara_settings.rb
311
80
  - lib/applitools/selenium/capybara/driver.rb
81
+ - lib/applitools/selenium/context_based_scale_provider.rb
82
+ - lib/applitools/selenium/css_translate_position_provider.rb
312
83
  - lib/applitools/selenium/driver.rb
313
84
  - lib/applitools/selenium/element.rb
85
+ - lib/applitools/selenium/element_position_provider.rb
86
+ - lib/applitools/selenium/eyes.rb
87
+ - lib/applitools/selenium/eyes_target_locator.rb
88
+ - lib/applitools/selenium/eyes_web_driver_screenshot.rb
89
+ - lib/applitools/selenium/frame.rb
90
+ - lib/applitools/selenium/frame_chain.rb
91
+ - lib/applitools/selenium/full_page_capture_algorithm.rb
314
92
  - lib/applitools/selenium/keyboard.rb
315
- - lib/applitools/selenium/match_window_data.rb
316
93
  - lib/applitools/selenium/match_window_task.rb
317
94
  - lib/applitools/selenium/mouse.rb
95
+ - lib/applitools/selenium/move_to_region_visibility_strategy.rb
96
+ - lib/applitools/selenium/nop_region_visibility_strategy.rb
318
97
  - lib/applitools/selenium/sauce/driver.rb
98
+ - lib/applitools/selenium/scroll_position_provider.rb
99
+ - lib/applitools/selenium/takes_screenshot_image_provider.rb
319
100
  - lib/applitools/selenium/viewport_size.rb
320
- - lib/applitools/selenium_webdriver.rb
321
- - lib/applitools/utils/image_delta_compressor.rb
322
- - lib/applitools/utils/image_utils.rb
323
- - lib/applitools/utils/utils.rb
324
101
  - lib/applitools/version.rb
325
- - lib/applitools/watir_browser.rb
326
102
  - lib/eyes_selenium.rb
327
- - spec/driver_passthrough_spec.rb
328
- - spec/fixtures/static_test_file.html
329
- - spec/spec_helper.rb
330
103
  homepage: https://www.applitools.com
331
104
  licenses:
332
105
  - Apache License, Version 2.0
@@ -350,8 +123,5 @@ rubyforge_project:
350
123
  rubygems_version: 2.6.8
351
124
  signing_key:
352
125
  specification_version: 4
353
- summary: Applitools Ruby SDK
354
- test_files:
355
- - spec/driver_passthrough_spec.rb
356
- - spec/fixtures/static_test_file.html
357
- - spec/spec_helper.rb
126
+ summary: Applitools Ruby Images SDK
127
+ test_files: []