eyes_appium 6.7.10 → 6.7.11

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 95b70e271616afd57fae6c2697f5619d810b887599ac53b4539fef3397d4e820
4
- data.tar.gz: 19032e2daf07662669a5ccfcf8c48700c1b6bc54b1cd1d7824e0e1f8e8271fe1
3
+ metadata.gz: 05e7575830274f4c61afded05a5be681eed91bf939dc9d0c76762de35b0f1479
4
+ data.tar.gz: 3a7814c43952c101753e48bd3c16282223d64e3e05207cfb93ade9938e396bad
5
5
  SHA512:
6
- metadata.gz: 0724a2972363cf43d76f4a234bba084b406356705b5b8d2991c9326e168c208c534971a8d702a279833436e5abea3609052569af747b196d2db8904e09e50d36
7
- data.tar.gz: 2342382220dc43b4f7bf49bc68e859be9a845004e17ddac802ec6203ac62d7e1838e3eaf21d496643adb2302a352a894df31a0214159d13ce22240315ff3911d
6
+ metadata.gz: f06b038b12d62c6971d7f67f15ba2c7ef2b39f10fa7167cdaf672d4428f6701de0f0ad64311c7f059eb30e3cb38bacc472c2fb2f3cb69e8c01aad06c0633fdd6
7
+ data.tar.gz: '0880e51138aa382a2a9fb417ec67ee4ccdb3a396346a4b4d8dac18e3f3197ef54dcf97b6c6bccd4158d238a1f2582e94cd1de22798f8c478261b26c3f1a7b671'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,32 @@
1
1
  # Changelog
2
2
 
3
+ ## [6.7.11](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_appium@6.7.10...ruby/eyes_appium@6.7.11) (2025-12-14)
4
+
5
+
6
+ ### Dependencies
7
+
8
+ * @applitools/nml-client bumped to 1.11.13
9
+
10
+ * @applitools/core-base bumped to 1.31.0
11
+ #### Features
12
+
13
+ * Baseline branch fallback list | FLD-3837 ([#3373](https://github.com/Applitools-Dev/sdk/issues/3373)) ([e94bb10](https://github.com/Applitools-Dev/sdk/commit/e94bb10ad6b49322a56e4ce6dfde560b237e9ac0))
14
+ * @applitools/ec-client bumped to 1.12.15
15
+
16
+ * @applitools/core bumped to 4.54.0
17
+ #### Features
18
+
19
+ * Baseline branch fallback list | FLD-3837 ([#3373](https://github.com/Applitools-Dev/sdk/issues/3373)) ([e94bb10](https://github.com/Applitools-Dev/sdk/commit/e94bb10ad6b49322a56e4ce6dfde560b237e9ac0))
20
+
21
+
22
+
23
+ * eyes_universal bumped to 4.54.0
24
+
25
+ * eyes_core bumped to 6.9.11
26
+
27
+ * eyes_selenium bumped to 6.12.11
28
+
29
+
3
30
  ## [6.7.10](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_appium@6.7.9...ruby/eyes_appium@6.7.10) (2025-12-07)
4
31
 
5
32
 
data/eyes_appium.gemspec CHANGED
@@ -27,8 +27,10 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
28
28
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
29
29
  spec.require_paths = %w(lib)
30
- spec.add_dependency 'eyes_selenium', "= 6.12.10"
30
+ spec.add_dependency 'eyes_selenium', "= 6.12.11"
31
31
  spec.add_dependency 'appium_lib', '>= 10.6.0'
32
- # TODO: remove after appium_lib fix issue on their side at https://github.com/appium/ruby_lib_core/issues/602
33
- spec.add_dependency 'selenium-webdriver', ['>= 3', '< 4.30']
32
+ # Align with eyes_selenium constraint. Previously had version limit < 4.30 due to
33
+ # appium_lib compatibility issue (github.com/appium/ruby_lib_core/issues/602)
34
+ # which has since been resolved.
35
+ spec.add_dependency 'selenium-webdriver', '>= 3', '< 5'
34
36
  end
@@ -2,8 +2,8 @@
2
2
 
3
3
  module Applitools::Appium
4
4
  class Driver < Applitools::Selenium::Driver
5
- def initialize(eyes, options)
6
- super(eyes, options)
5
+ def initialize(eyes, **options)
6
+ super(eyes, **options)
7
7
  end
8
8
  module AppiumLib
9
9
  extend self
@@ -107,69 +107,7 @@ class Applitools::Appium::Eyes < Applitools::Selenium::SeleniumEyes
107
107
 
108
108
  # target.fully(false) if target.options[:stitch_content].nil?
109
109
 
110
- return universal_check(name, target)
111
- return check_native(name, target) if native_app?
112
- super
113
- end
114
-
115
- attr_accessor :eyes_element_to_check, :region_provider
116
- private :eyes_element_to_check, :eyes_element_to_check=, :region_provider, :region_provider=
117
-
118
- def check_native(name, target)
119
- logger.info "check_native(#{name}) is called"
120
- update_scaling_params
121
- target_to_check = target.finalize
122
- match_data = Applitools::MatchWindowData.new(default_match_settings)
123
- match_data.tag = name
124
- timeout = target_to_check.options[:timeout] || USE_DEFAULT_MATCH_TIMEOUT
125
-
126
- eyes_element = target_to_check.region_to_check.call(driver)
127
- self.eyes_element_to_check = eyes_element
128
- region_provider = region_provider_class.new(driver, eyes_element)
129
- match_data.read_target(target_to_check, driver)
130
-
131
- check_window_base(
132
- region_provider, timeout, match_data
133
- )
134
- end
135
-
136
- def native_app?
137
- return true if driver.current_context == 'NATIVE_APP'
138
- false
139
- end
140
-
141
- def capture_screenshot
142
- logger.info 'Getting screenshot (capture_screenshot() has been invoked)'
143
- case eyes_element_to_check
144
- when Applitools::Region
145
- viewport_screenshot
146
- when Selenium::WebDriver::Element, Applitools::Selenium::Element
147
- element_screenshot
148
- end
149
- end
150
-
151
- def get_app_output_with_screenshot(*args)
152
- result = super do |screenshot|
153
- if scale_provider
154
- scaled_image = scale_provider.scale_image(screenshot.image)
155
- self.screenshot = screenshot_class.new(
156
- Applitools::Screenshot.from_image(
157
- case scaled_image
158
- # when ChunkyPNG::Image
159
- # scaled_image
160
- when Applitools::Screenshot::Datastream
161
- scaled_image.image
162
- else
163
- raise Applitools::EyesError.new('Unknown image format after scale!')
164
- end
165
- ),
166
- status_bar_height: self.utils.status_bar_height(driver),
167
- device_pixel_ratio: self.utils.device_pixel_ratio(driver)
168
- )
169
- end
170
- end
171
- self.screenshot_url = nil
172
- result
110
+ universal_check(name, target)
173
111
  end
174
112
 
175
113
  def dom_data
@@ -220,36 +158,4 @@ class Applitools::Appium::Eyes < Applitools::Selenium::SeleniumEyes
220
158
  self.screenshot_mode = !value ? 'applitools-lib' : 'default'
221
159
  self
222
160
  end
223
-
224
- private
225
-
226
- def viewport_screenshot
227
- logger.info 'Viewport screenshot requested...'
228
- obtain_viewport_screenshot
229
- end
230
-
231
- def element_screenshot
232
- logger.info 'Element screenshot requested...'
233
- obtain_viewport_screenshot
234
- end
235
-
236
- def obtain_viewport_screenshot
237
- self.screenshot = screenshot_class.new(
238
- Applitools::Screenshot.from_datastream(driver.screenshot_as(:png)),
239
- status_bar_height: self.utils.status_bar_height(driver),
240
- device_pixel_ratio: self.utils.device_pixel_ratio(driver)
241
- )
242
- end
243
-
244
- def screenshot_class
245
- return Applitools::Appium::IosScreenshot if self.utils.ios?(Applitools::Appium::Driver::AppiumLib)
246
- return Applitools::Appium::AndroidScreenshot if self.utils.android?(Applitools::Appium::Driver::AppiumLib)
247
- raise Applitools::EyesError, 'Unknown device type'
248
- end
249
-
250
- def region_provider_class
251
- return Applitools::Appium::IosRegionProvider if self.utils.ios?(Applitools::Appium::Driver::AppiumLib)
252
- return Applitools::Appium::AndroidRegionProvider if self.utils.android?(Applitools::Appium::Driver::AppiumLib)
253
- raise Applitools::EyesError, 'Unknown device type'
254
- end
255
161
  end
@@ -33,208 +33,6 @@ module Applitools
33
33
  # options[:stitch_content] = false if options[:stitch_content].nil?
34
34
  self
35
35
  end
36
-
37
- # class Target
38
- # include Applitools::FluentInterface
39
- # attr_accessor :region_to_check, :options, :ignored_regions, :floating_regions, :layout_regions, :content_regions, :strict_regions, :accessibility_regions
40
- #
41
- # class << self
42
- # def window
43
- # new
44
- # end
45
- #
46
- # def region(*args)
47
- # new.region(*args)
48
- # end
49
- # end
50
- #
51
- # def initialize
52
- # self.region_to_check = proc { Applitools::Region::EMPTY }
53
- # self.ignored_regions = []
54
- # self.floating_regions = []
55
- # self.layout_regions = []
56
- # self.content_regions = []
57
- # self.strict_regions = []
58
- # self.accessibility_regions = []
59
- # self.options = {}
60
- # end
61
- #
62
- # def region(*args)
63
- # self.region_to_check = case args.first
64
- # when ::Selenium::WebDriver::Element
65
- # proc { args.first }
66
- # else
67
- # proc do |driver|
68
- # driver.find_element(*args)
69
- # end
70
- # end
71
- # self
72
- # end
73
- #
74
- # def ignore(*args)
75
- # requested_padding = if args.last.is_a? Applitools::PaddingBounds
76
- # args.pop
77
- # else
78
- # Applitools::PaddingBounds::ZERO_PADDING
79
- # end
80
- # ignored_regions << case (first_argument = args.first)
81
- # when ::Selenium::WebDriver::Element
82
- # proc do
83
- # Applitools::Region
84
- # .from_location_size(first_argument.location, first_argument.size)
85
- # .padding(requested_padding)
86
- # end
87
- # when Applitools::Region
88
- # result = first_argument.padding(requested_padding)
89
- # if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
90
- # def result.converted?
91
- # true
92
- # end
93
- # end
94
- # result
95
- # else
96
- # proc do |driver|
97
- # element = driver.find_element(*args)
98
- # Applitools::Region
99
- # .from_location_size(element.location, element.size)
100
- # .padding(requested_padding)
101
- # end
102
- # end
103
- # self
104
- # end
105
- #
106
- # def floating(*args)
107
- # value = case args.first
108
- # when Applitools::FloatingRegion
109
- # args.first
110
- # when Applitools::Region
111
- # result = Applitools::FloatingRegion.any(*args)
112
- # if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
113
- # def result.converted?
114
- # true
115
- # end
116
- # end
117
- # result
118
- # when ::Selenium::WebDriver::Element
119
- # args_dup = args.dup
120
- # Applitools::FloatingRegion.any(*args_dup)
121
- # else
122
- # proc do |driver|
123
- # args_dup = args.dup
124
- # region = driver.find_element(args_dup.shift, args_dup.shift)
125
- # Applitools::FloatingRegion.any(
126
- # region, *args_dup
127
- # )
128
- # end
129
- # end
130
- # floating_regions << value
131
- # self
132
- # end
133
- #
134
- # def layout
135
- # return match_level(Applitools::MatchLevel::LAYOUT) if args.empty?
136
- # region = process_region(*args)
137
- # layout_regions << region
138
- # self
139
- #
140
- # end
141
- #
142
- # def content(*args)
143
- # return match_level(Applitools::MatchLevel::CONTENT) if args.empty?
144
- # region = process_region(*args)
145
- # content_regions << region
146
- # self
147
- # end
148
- #
149
- # def strict(*args)
150
- # return match_level(Applitools::MatchLevel::STRICT) if args.empty?
151
- # region = process_region(*args)
152
- # strict_regions << region
153
- # self
154
- # end
155
- #
156
- # def exact(*args)
157
- # match_level(Applitools::MatchLevel::EXACT, *args)
158
- # end
159
- #
160
- # def accessibility(*args)
161
- # options = Applitools::Utils.extract_options! args
162
- # unless options[:type]
163
- # raise Applitools::EyesError,
164
- # 'You should call Target.accessibility(region, type: type). The region_type option is required'
165
- # end
166
- # unless Applitools::AccessibilityRegionType.enum_values.include?(options[:type])
167
- # raise Applitools::EyesIllegalArgument,
168
- # "The region type should be one of [#{Applitools::AccessibilityRegionType.enum_values.join(', ')}]"
169
- # end
170
- #
171
- # accessibility_regions << case args.first
172
- # when ::Selenium::WebDriver::Element
173
- # element = args.first
174
- # Applitools::AccessibilityRegion.new(
175
- # element,
176
- # options[:type]
177
- # )
178
- # when Applitools::Region
179
- # result = Applitools::AccessibilityRegion.new(
180
- # args.first, options[:type]
181
- # )
182
- # if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
183
- # def result.converted?
184
- # true
185
- # end
186
- # end
187
- # result
188
- # when String
189
- # proc do |driver|
190
- # element = driver.find_element(name_or_id: args.first)
191
- # Applitools::AccessibilityRegion.new(
192
- # element,
193
- # options[:type]
194
- # )
195
- # end
196
- # else
197
- # proc do |driver|
198
- # elements = driver.find_elements(*args)
199
- # elements.map do |e|
200
- # Applitools::AccessibilityRegion.new(
201
- # e,
202
- # options[:type]
203
- # )
204
- # end
205
- # end
206
- # end
207
- # self
208
- # end
209
- #
210
- # def finalize
211
- # self
212
- # end
213
- #
214
- # private
215
- #
216
- # def process_region(*args)
217
- # r = args.first
218
- # case r
219
- # when ::Selenium::WebDriver::Element
220
- # proc do |driver|
221
- # Applitools::Region.from_location_size(r.location, r.size)
222
- # end
223
- # when Applitools::Region
224
- # if Applitools::Appium::Utils.ios?(Applitools::Appium::Driver::AppiumLib)
225
- # def r.converted?
226
- # true
227
- # end
228
- # end
229
- # r
230
- # else
231
- # proc do |driver|
232
- # element = driver.find_element(*args)
233
- # Applitools::Region.from_location_size(element.location, element.size)
234
- # end
235
- # end
236
- # end
237
- #
238
36
  end
239
37
  end
240
38
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Applitools
4
4
  module EyesAppium
5
- VERSION = '6.7.10'.freeze
5
+ VERSION = '6.7.11'.freeze
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eyes_appium
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.7.10
4
+ version: 6.7.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Applitools Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-12-07 00:00:00.000000000 Z
11
+ date: 2025-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eyes_selenium
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 6.12.10
19
+ version: 6.12.11
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 6.12.10
26
+ version: 6.12.11
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: appium_lib
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -47,7 +47,7 @@ dependencies:
47
47
  version: '3'
48
48
  - - "<"
49
49
  - !ruby/object:Gem::Version
50
- version: '4.30'
50
+ version: '5'
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
@@ -57,7 +57,7 @@ dependencies:
57
57
  version: '3'
58
58
  - - "<"
59
59
  - !ruby/object:Gem::Version
60
- version: '4.30'
60
+ version: '5'
61
61
  description: Appium support for Applitools Ruby SDK
62
62
  email:
63
63
  - team@applitools.com