eyes_selenium 6.3.7 → 6.4.0
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 +4 -4
- data/CHANGELOG.md +124 -0
- data/eyes_selenium.gemspec +1 -1
- data/lib/applitools/eyes_selenium/version.rb +1 -1
- data/lib/applitools/selenium/device_name_generated.rb +44 -0
- data/lib/applitools/selenium/target.rb +75 -31
- data/lib/applitools/selenium/visual_grid/ios_device_name_generated.rb +0 -73
- metadata +8 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: c52fe814a6093be9affcf3a2f66cb15e4c032bdfe0cc30487b26f884dcd3eed1
|
|
4
|
+
data.tar.gz: ff25c05dd845d571e8092f646225316cce2dd1241a8ae383ba0543a9b7feb8c3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 67748661091fb003a30a46d643d3fd37878b60a7e39e1f6a0572c8544767f0f417f2874988bd14c4107cfcc7d39d545e862cb4f234065710af9e9dba322ae3df
|
|
7
|
+
data.tar.gz: 1e893aaf889bdcb15cb13ae6534953bc2b1f0fbf5f18b427e40310b02f116e16cec186f20f345a56ad2f5d53de205b85e764e5e5210fdaee6ca957cb5b60abbc
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,129 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [6.4.0](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_selenium@6.3.8...ruby/eyes_selenium@6.4.0) (2024-10-21)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add chrome emulation devices ([#2559](https://github.com/Applitools-Dev/sdk/issues/2559)) ([0499aaf](https://github.com/Applitools-Dev/sdk/commit/0499aaf3bb809d2ac0105b4493e6f6bb8730ea3f))
|
|
9
|
+
* dynamic regions ([#2538](https://github.com/Applitools-Dev/sdk/issues/2538)) ([d8b5c48](https://github.com/Applitools-Dev/sdk/commit/d8b5c48fb35f9789c702447314dc72b4f415ade1))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Dependencies
|
|
13
|
+
|
|
14
|
+
* @applitools/snippets bumped to 2.5.1
|
|
15
|
+
#### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* isStaleElement error ([#2567](https://github.com/Applitools-Dev/sdk/issues/2567)) ([2675086](https://github.com/Applitools-Dev/sdk/commit/2675086aa28589082249e2958942ee29a5f2ef12))
|
|
18
|
+
* @applitools/core-base bumped to 1.18.0
|
|
19
|
+
#### Features
|
|
20
|
+
|
|
21
|
+
* ability to download side by side with highlighted diffs (2419) ([#2530](https://github.com/Applitools-Dev/sdk/issues/2530)) ([e06ce69](https://github.com/Applitools-Dev/sdk/commit/e06ce699f30e9e444ac58dafdf5989ff1c96ca1c))
|
|
22
|
+
* dynamic regions ([#2538](https://github.com/Applitools-Dev/sdk/issues/2538)) ([d8b5c48](https://github.com/Applitools-Dev/sdk/commit/d8b5c48fb35f9789c702447314dc72b4f415ade1))
|
|
23
|
+
* setting up SCM information automatically ([#2542](https://github.com/Applitools-Dev/sdk/issues/2542)) ([696461a](https://github.com/Applitools-Dev/sdk/commit/696461af3f8e2e3ed94eb78fed5ead6233bd16b2))
|
|
24
|
+
* @applitools/driver bumped to 1.19.3
|
|
25
|
+
|
|
26
|
+
* @applitools/spec-driver-webdriver bumped to 1.1.15
|
|
27
|
+
|
|
28
|
+
* @applitools/spec-driver-selenium bumped to 1.5.86
|
|
29
|
+
|
|
30
|
+
* @applitools/spec-driver-puppeteer bumped to 1.4.15
|
|
31
|
+
|
|
32
|
+
* @applitools/screenshoter bumped to 3.9.0
|
|
33
|
+
#### Features
|
|
34
|
+
|
|
35
|
+
* capture status bar ([#2571](https://github.com/Applitools-Dev/sdk/issues/2571)) ([5e1c75e](https://github.com/Applitools-Dev/sdk/commit/5e1c75ef9cf34af80f08806a3bceaf06a94f2780))
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
* @applitools/nml-client bumped to 1.8.13
|
|
40
|
+
|
|
41
|
+
* @applitools/ec-client bumped to 1.9.9
|
|
42
|
+
|
|
43
|
+
* @applitools/core bumped to 4.21.0
|
|
44
|
+
#### Features
|
|
45
|
+
|
|
46
|
+
* add chrome emulation devices ([#2559](https://github.com/Applitools-Dev/sdk/issues/2559)) ([0499aaf](https://github.com/Applitools-Dev/sdk/commit/0499aaf3bb809d2ac0105b4493e6f6bb8730ea3f))
|
|
47
|
+
* capture status bar ([#2571](https://github.com/Applitools-Dev/sdk/issues/2571)) ([5e1c75e](https://github.com/Applitools-Dev/sdk/commit/5e1c75ef9cf34af80f08806a3bceaf06a94f2780))
|
|
48
|
+
* dynamic regions ([#2538](https://github.com/Applitools-Dev/sdk/issues/2538)) ([d8b5c48](https://github.com/Applitools-Dev/sdk/commit/d8b5c48fb35f9789c702447314dc72b4f415ade1))
|
|
49
|
+
* setting up SCM information automatically ([#2542](https://github.com/Applitools-Dev/sdk/issues/2542)) ([696461a](https://github.com/Applitools-Dev/sdk/commit/696461af3f8e2e3ed94eb78fed5ead6233bd16b2))
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
#### Bug Fixes
|
|
53
|
+
|
|
54
|
+
* don't remove offline execution folder after running ([654e195](https://github.com/Applitools-Dev/sdk/commit/654e195dd50dc7dab93dd907ec26d788549c6e81))
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
* eyes_universal bumped to 4.21.0
|
|
59
|
+
|
|
60
|
+
* eyes_core bumped to 6.4.0
|
|
61
|
+
#### Features
|
|
62
|
+
|
|
63
|
+
* dynamic regions ([#2538](https://github.com/Applitools-Dev/sdk/issues/2538)) ([d8b5c48](https://github.com/Applitools-Dev/sdk/commit/d8b5c48fb35f9789c702447314dc72b4f415ade1))
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
## [6.3.8](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_selenium@6.3.7...ruby/eyes_selenium@6.3.8) (2024-09-10)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
### Bug Fixes
|
|
72
|
+
|
|
73
|
+
* update ios devices enums ([9b4614f](https://github.com/Applitools-Dev/sdk/commit/9b4614f09bbbe42cf99824d76893f9067aab2cc4))
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
### Dependencies
|
|
77
|
+
|
|
78
|
+
* @applitools/dom-capture bumped to 11.4.0
|
|
79
|
+
#### Features
|
|
80
|
+
|
|
81
|
+
* ability to capture all css props in computed style ([#2484](https://github.com/Applitools-Dev/sdk/issues/2484)) ([8769ee5](https://github.com/Applitools-Dev/sdk/commit/8769ee566f2d9e163437c7bcd385ec993f05f370))
|
|
82
|
+
* @applitools/driver bumped to 1.19.0
|
|
83
|
+
#### Features
|
|
84
|
+
|
|
85
|
+
* add support for env var APPLITOOLS_IS_IC ([#2469](https://github.com/Applitools-Dev/sdk/issues/2469)) ([87d7b5c](https://github.com/Applitools-Dev/sdk/commit/87d7b5cc1f7ea774c6b90504e85296f0681d0b1e))
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
#### Bug Fixes
|
|
89
|
+
|
|
90
|
+
* handle userAgent.brands returned as string ([#2453](https://github.com/Applitools-Dev/sdk/issues/2453)) ([dd6328b](https://github.com/Applitools-Dev/sdk/commit/dd6328be3e7d885714124a8e43aabaae3abecde9))
|
|
91
|
+
* searching for scrollable element multiple times ([#2493](https://github.com/Applitools-Dev/sdk/issues/2493)) ([d98db80](https://github.com/Applitools-Dev/sdk/commit/d98db8016c6312f467f244444c6f1a87bc09b7da))
|
|
92
|
+
* @applitools/tunnel-client bumped to 1.5.8
|
|
93
|
+
#### Bug Fixes
|
|
94
|
+
|
|
95
|
+
* upgrade execution-grid-tunnel ([#2475](https://github.com/Applitools-Dev/sdk/issues/2475)) ([e5952b4](https://github.com/Applitools-Dev/sdk/commit/e5952b4ca1bd0c065111ce1109b218f1fd68f6fc))
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
* @applitools/core-base bumped to 1.16.1
|
|
100
|
+
#### Bug Fixes
|
|
101
|
+
|
|
102
|
+
* infinity concurrency ([#2477](https://github.com/Applitools-Dev/sdk/issues/2477)) ([f488e16](https://github.com/Applitools-Dev/sdk/commit/f488e162f124acc249ed7b43b714f13c18306dc8))
|
|
103
|
+
* @applitools/spec-driver-webdriver bumped to 1.1.12
|
|
104
|
+
|
|
105
|
+
* @applitools/spec-driver-selenium bumped to 1.5.83
|
|
106
|
+
|
|
107
|
+
* @applitools/spec-driver-puppeteer bumped to 1.4.12
|
|
108
|
+
|
|
109
|
+
* @applitools/screenshoter bumped to 3.8.36
|
|
110
|
+
|
|
111
|
+
* @applitools/nml-client bumped to 1.8.10
|
|
112
|
+
|
|
113
|
+
* @applitools/ec-client bumped to 1.9.4
|
|
114
|
+
|
|
115
|
+
* @applitools/core bumped to 4.18.2
|
|
116
|
+
#### Bug Fixes
|
|
117
|
+
|
|
118
|
+
* don't call check-network when executing binary and cli ([#2491](https://github.com/Applitools-Dev/sdk/issues/2491)) ([ef00d20](https://github.com/Applitools-Dev/sdk/commit/ef00d205450b7bbe7abc1bc9bce8d6970f769091))
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
* eyes_universal bumped to 4.18.2
|
|
123
|
+
|
|
124
|
+
* eyes_core bumped to 6.3.8
|
|
125
|
+
|
|
126
|
+
|
|
3
127
|
## [6.3.7](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_selenium@6.3.6...ruby/eyes_selenium@6.3.7) (2024-07-23)
|
|
4
128
|
|
|
5
129
|
|
data/eyes_selenium.gemspec
CHANGED
|
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
|
25
25
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
26
26
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
27
27
|
spec.require_paths = %w(lib)
|
|
28
|
-
spec.add_dependency 'eyes_core', "= 6.
|
|
28
|
+
spec.add_dependency 'eyes_core', "= 6.4.0"
|
|
29
29
|
spec.add_dependency 'selenium-webdriver', '>= 3'
|
|
30
30
|
spec.add_dependency 'css_parser'
|
|
31
31
|
spec.add_dependency 'crass'
|
|
@@ -8,9 +8,14 @@ module DeviceNameGenerated
|
|
|
8
8
|
# Deprecated: Use DeviceName::IPhone_5SE instead.
|
|
9
9
|
# deprecate_constant :IPhone_5S_E not allow to point to new version (
|
|
10
10
|
IPhone_5S_E = 'iPhone 5/SE'.freeze
|
|
11
|
+
IPhone_SE_3rd_Gen = 'iPhone SE 3rd Gen'.freeze
|
|
11
12
|
IPhone_6_7_8 = 'iPhone 6/7/8'.freeze
|
|
12
13
|
IPhone_6_7_8_Plus = 'iPhone 6/7/8 Plus'.freeze
|
|
13
14
|
IPhone_X = 'iPhone X'.freeze
|
|
15
|
+
IPhone_13_Mini = 'iPhone 13 Mini'.freeze
|
|
16
|
+
IPhone_14_Plus = 'iPhone 14 Plus'.freeze
|
|
17
|
+
IPhone_14_Pro = 'iPhone 14 Pro'.freeze
|
|
18
|
+
IPhone_15_Pro = 'iPhone 15 Pro'.freeze
|
|
14
19
|
BlackBerry_Z30 = 'BlackBerry Z30'.freeze
|
|
15
20
|
Nexus_4 = 'Nexus 4'.freeze
|
|
16
21
|
Nexus_5 = 'Nexus 5'.freeze
|
|
@@ -31,6 +36,10 @@ module DeviceNameGenerated
|
|
|
31
36
|
IPad_Mini = 'iPad Mini'.freeze
|
|
32
37
|
IPad = 'iPad'.freeze
|
|
33
38
|
IPad_Pro = 'iPad Pro'.freeze
|
|
39
|
+
IPad_8th_Gen = 'iPad 8th Gen'.freeze
|
|
40
|
+
IPad_10th_Gen = 'iPad 10th Gen'.freeze
|
|
41
|
+
IPad_Mini_4th_Gen = 'iPad Mini 4th Gen'.freeze
|
|
42
|
+
IPad_Mini_6th_Gen = 'iPad Mini 6th Gen'.freeze
|
|
34
43
|
Blackberry_PlayBook = 'Blackberry PlayBook'.freeze
|
|
35
44
|
Nexus_10 = 'Nexus 10'.freeze
|
|
36
45
|
Nexus_7 = 'Nexus 7'.freeze
|
|
@@ -68,6 +77,13 @@ module DeviceNameGenerated
|
|
|
68
77
|
Galaxy_Note_9 = 'Galaxy Note 9'.freeze
|
|
69
78
|
Galaxy_Note_8 = 'Galaxy Note 8'.freeze
|
|
70
79
|
Galaxy_Note_4 = 'Galaxy Note 4'.freeze
|
|
80
|
+
Galaxy_Tab_A_SM_T510 = 'Galaxy Tab A SM-T510'.freeze
|
|
81
|
+
Galaxy_Tab_A7_SM_T500 = 'Galaxy Tab A7 SM-T500'.freeze
|
|
82
|
+
Galaxy_Tab_S8 = 'Galaxy Tab S8'.freeze
|
|
83
|
+
Galaxy_Tab_A8 = 'Galaxy Tab A8'.freeze
|
|
84
|
+
Galaxy_S23 = 'Galaxy S23'.freeze
|
|
85
|
+
Galaxy_S23_Ultra = 'Galaxy S23 Ultra'.freeze
|
|
86
|
+
Galaxy_A52s = 'Galaxy A52s'.freeze
|
|
71
87
|
Pixel_3 = 'Pixel 3'.freeze
|
|
72
88
|
Pixel_3_XL = 'Pixel 3 XL'.freeze
|
|
73
89
|
Pixel_4 = 'Pixel 4'.freeze
|
|
@@ -80,15 +96,26 @@ module DeviceNameGenerated
|
|
|
80
96
|
Sony_Xperia_10_II = 'Sony Xperia 10 II'.freeze
|
|
81
97
|
Huawei_Mate_50_Pro = 'Huawei Mate 50 Pro'.freeze
|
|
82
98
|
Huawei_Matepad_11 = 'Huawei Matepad 11'.freeze
|
|
99
|
+
Huawei_P30 = 'Huawei P30'.freeze
|
|
100
|
+
Xiaomi_Mi_A3 = 'Xiaomi Mi A3'.freeze
|
|
101
|
+
Huawei_P40 = 'Huawei P40'.freeze
|
|
102
|
+
Xiaomi_Redmi_Note_8 = 'Xiaomi Redmi Note 8'.freeze
|
|
103
|
+
Xiaomi_Mi_Poco_X3_Pro = 'Xiaomi Mi Poco X3 Pro'.freeze
|
|
104
|
+
Xiaomi_Poco_X3 = 'Xiaomi Poco X3'.freeze
|
|
83
105
|
|
|
84
106
|
def enum_values
|
|
85
107
|
[
|
|
86
108
|
IPhone_4,
|
|
87
109
|
IPhone_5SE,
|
|
88
110
|
IPhone_5S_E, # Deprecated: Use DeviceName::IPhone_5SE instead.
|
|
111
|
+
IPhone_SE_3rd_Gen,
|
|
89
112
|
IPhone_6_7_8,
|
|
90
113
|
IPhone_6_7_8_Plus,
|
|
91
114
|
IPhone_X,
|
|
115
|
+
IPhone_13_Mini,
|
|
116
|
+
IPhone_14_Plus,
|
|
117
|
+
IPhone_14_Pro,
|
|
118
|
+
IPhone_15_Pro,
|
|
92
119
|
BlackBerry_Z30,
|
|
93
120
|
Nexus_4,
|
|
94
121
|
Nexus_5,
|
|
@@ -109,6 +136,10 @@ module DeviceNameGenerated
|
|
|
109
136
|
IPad_Mini,
|
|
110
137
|
IPad,
|
|
111
138
|
IPad_Pro,
|
|
139
|
+
IPad_8th_Gen,
|
|
140
|
+
IPad_10th_Gen,
|
|
141
|
+
IPad_Mini_4th_Gen,
|
|
142
|
+
IPad_Mini_6th_Gen,
|
|
112
143
|
Blackberry_PlayBook,
|
|
113
144
|
Nexus_10,
|
|
114
145
|
Nexus_7,
|
|
@@ -146,6 +177,13 @@ module DeviceNameGenerated
|
|
|
146
177
|
Galaxy_Note_9,
|
|
147
178
|
Galaxy_Note_8,
|
|
148
179
|
Galaxy_Note_4,
|
|
180
|
+
Galaxy_Tab_A_SM_T510,
|
|
181
|
+
Galaxy_Tab_A7_SM_T500,
|
|
182
|
+
Galaxy_Tab_S8,
|
|
183
|
+
Galaxy_Tab_A8,
|
|
184
|
+
Galaxy_S23,
|
|
185
|
+
Galaxy_S23_Ultra,
|
|
186
|
+
Galaxy_A52s,
|
|
149
187
|
Pixel_3,
|
|
150
188
|
Pixel_3_XL,
|
|
151
189
|
Pixel_4,
|
|
@@ -158,6 +196,12 @@ module DeviceNameGenerated
|
|
|
158
196
|
Sony_Xperia_10_II,
|
|
159
197
|
Huawei_Mate_50_Pro,
|
|
160
198
|
Huawei_Matepad_11,
|
|
199
|
+
Huawei_P30,
|
|
200
|
+
Xiaomi_Mi_A3,
|
|
201
|
+
Huawei_P40,
|
|
202
|
+
Xiaomi_Redmi_Note_8,
|
|
203
|
+
Xiaomi_Mi_Poco_X3_Pro,
|
|
204
|
+
Xiaomi_Poco_X3,
|
|
161
205
|
]
|
|
162
206
|
end
|
|
163
207
|
end
|
|
@@ -21,7 +21,7 @@ module Applitools
|
|
|
21
21
|
|
|
22
22
|
attr_accessor :element, :frames, :region_to_check, :coordinate_type, :options, :ignored_regions,
|
|
23
23
|
:floating_regions, :frame_or_element, :regions, :layout_regions, :content_regions,
|
|
24
|
-
:strict_regions, :accessibility_regions, :convert_coordinates_block
|
|
24
|
+
:strict_regions, :accessibility_regions, :dynamic_regions, :convert_coordinates_block
|
|
25
25
|
|
|
26
26
|
private :frame_or_element, :frame_or_element=
|
|
27
27
|
|
|
@@ -153,6 +153,8 @@ module Applitools
|
|
|
153
153
|
replace_element(original_region, new_region, ignored_regions)
|
|
154
154
|
when :accessibility_regions
|
|
155
155
|
replace_element(original_region, new_region, accessibility_regions)
|
|
156
|
+
when :dynamic_regions
|
|
157
|
+
replace_element(original_region, new_region, dynamic_regions)
|
|
156
158
|
end
|
|
157
159
|
end
|
|
158
160
|
|
|
@@ -259,38 +261,75 @@ module Applitools
|
|
|
259
261
|
padding_proc = proc { |region| Applitools::AccessibilityRegion.new(region, options[:type]) }
|
|
260
262
|
|
|
261
263
|
accessibility_regions << case args.first
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
264
|
+
when ::Selenium::WebDriver::Element
|
|
265
|
+
proc do |driver, return_element = false|
|
|
266
|
+
element = applitools_element_from_selenium_element(driver, args.first)
|
|
267
|
+
next element, padding_proc if return_element
|
|
268
|
+
padding_proc.call(element)
|
|
269
|
+
end
|
|
270
|
+
when Applitools::Selenium::Element
|
|
271
|
+
proc do |_driver, return_element = false|
|
|
272
|
+
next args.first, padding_proc if return_element
|
|
273
|
+
padding_proc.call(args.first)
|
|
274
|
+
end
|
|
275
|
+
when Applitools::Region
|
|
276
|
+
Applitools::AccessibilityRegion.new(
|
|
277
|
+
args.first, options[:type]
|
|
278
|
+
)
|
|
279
|
+
when String
|
|
280
|
+
proc do |driver, return_element = false|
|
|
281
|
+
element = driver.find_element(name_or_id: args.first)
|
|
282
|
+
next element, padding_proc if return_element
|
|
283
|
+
padding_proc.call(element)
|
|
284
|
+
end
|
|
285
|
+
when :css
|
|
286
|
+
{ region: args[1], type: options[:type] }
|
|
287
|
+
else
|
|
288
|
+
proc do |driver, return_element = false|
|
|
289
|
+
elements = driver.find_elements(*args)
|
|
290
|
+
next elements, padding_proc if return_element
|
|
291
|
+
elements.map { |e| padding_proc.call(e) }
|
|
292
|
+
end
|
|
293
|
+
end
|
|
294
|
+
self
|
|
295
|
+
end
|
|
296
|
+
|
|
297
|
+
def dynamic(*args)
|
|
298
|
+
options = Applitools::Utils.extract_options! args
|
|
299
|
+
handle_frames
|
|
300
|
+
padding_proc = proc { |region| Applitools::DynamicRegion.new(region, options[:type]) }
|
|
301
|
+
|
|
302
|
+
dynamic_regions << case args.first
|
|
303
|
+
when ::Selenium::WebDriver::Element
|
|
304
|
+
proc do |driver, return_element = false|
|
|
305
|
+
element = applitools_element_from_selenium_element(driver, args.first)
|
|
306
|
+
next element, padding_proc if return_element
|
|
307
|
+
padding_proc.call(element)
|
|
308
|
+
end
|
|
309
|
+
when Applitools::Selenium::Element
|
|
310
|
+
proc do |_driver, return_element = false|
|
|
311
|
+
next args.first, padding_proc if return_element
|
|
312
|
+
padding_proc.call(args.first)
|
|
313
|
+
end
|
|
314
|
+
when Applitools::Region
|
|
315
|
+
Applitools::DynamicRegion.new(
|
|
316
|
+
args.first, options[:type]
|
|
317
|
+
)
|
|
318
|
+
when String
|
|
319
|
+
proc do |driver, return_element = false|
|
|
320
|
+
element = driver.find_element(name_or_id: args.first)
|
|
321
|
+
next element, padding_proc if return_element
|
|
322
|
+
padding_proc.call(element)
|
|
323
|
+
end
|
|
283
324
|
when :css
|
|
284
|
-
# (:css, '.ignore', type: 'LargeText')
|
|
285
325
|
{ region: args[1], type: options[:type] }
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
end
|
|
326
|
+
else
|
|
327
|
+
proc do |driver, return_element = false|
|
|
328
|
+
elements = driver.find_elements(*args)
|
|
329
|
+
next elements, padding_proc if return_element
|
|
330
|
+
elements.map { |e| padding_proc.call(e) }
|
|
331
|
+
end
|
|
332
|
+
end
|
|
294
333
|
self
|
|
295
334
|
end
|
|
296
335
|
|
|
@@ -365,6 +404,7 @@ module Applitools
|
|
|
365
404
|
reset_layout_regions
|
|
366
405
|
reset_strict_regions
|
|
367
406
|
reset_accessibility_regions
|
|
407
|
+
reset_dynamic_regions
|
|
368
408
|
options[:stitch_content] = nil
|
|
369
409
|
options[:timeout] = nil
|
|
370
410
|
options[:trim] = false
|
|
@@ -374,6 +414,10 @@ module Applitools
|
|
|
374
414
|
self.accessibility_regions = []
|
|
375
415
|
end
|
|
376
416
|
|
|
417
|
+
def reset_dynamic_regions
|
|
418
|
+
self.dynamic_regions = []
|
|
419
|
+
end
|
|
420
|
+
|
|
377
421
|
def reset_ignore
|
|
378
422
|
self.ignored_regions = []
|
|
379
423
|
end
|
|
@@ -2,26 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
module IosDeviceNameGenerated
|
|
4
4
|
extend self
|
|
5
|
-
IPad_5 = 'iPad (5th generation)'.freeze
|
|
6
|
-
IPad_6 = 'iPad (6th generation)'.freeze
|
|
7
5
|
IPad_7 = 'iPad (7th generation)'.freeze
|
|
8
|
-
IPad_8 = 'iPad (8th generation)'.freeze
|
|
9
6
|
IPad_9 = 'iPad (9th generation)'.freeze
|
|
10
|
-
IPad_10 = 'iPad (10th generation)'.freeze
|
|
11
|
-
IPad_Air_2 = 'iPad Air 2'.freeze
|
|
12
|
-
IPad_Air_3 = 'iPad Air (3rd generation)'.freeze
|
|
13
7
|
IPad_Air_4 = 'iPad Air (4th generation)'.freeze
|
|
14
|
-
IPad_Air_5 = 'iPad Air (5th generation)'.freeze
|
|
15
|
-
IPad_mini_4 = 'iPad mini 4'.freeze
|
|
16
|
-
IPad_mini_5 = 'iPad mini (5th generation)'.freeze
|
|
17
|
-
IPad_mini_6 = 'iPad mini (6th generation)'.freeze
|
|
18
|
-
IPad_Pro_9_7_inch_1 = 'iPad Pro (9.7-inch)'.freeze
|
|
19
|
-
IPad_Pro_10_5_inch_1 = 'iPad Pro (10.5-inch)'.freeze
|
|
20
|
-
IPad_Pro_11_inch_1 = 'iPad Pro (11-inch) (1st generation)'.freeze
|
|
21
|
-
IPad_Pro_12_9_inch_1 = 'iPad Pro (12.9-inch) (1st generation)'.freeze
|
|
22
|
-
IPad_Pro_11_inch_2 = 'iPad Pro (11-inch) (2nd generation)'.freeze
|
|
23
|
-
IPad_Pro_12_9_inch_2 = 'iPad Pro (12.9-inch) (2nd generation)'.freeze
|
|
24
|
-
IPad_Pro_11_inch_3 = 'iPad Pro (11-inch) (3rd generation)'.freeze
|
|
25
8
|
|
|
26
9
|
# Deprecated: Use IosDeviceName::IPad_Pro_12_9_inch_3 instead.
|
|
27
10
|
# deprecate_constant :IPad_Pro_3 not allow to point to new version (
|
|
@@ -32,13 +15,6 @@ module IosDeviceNameGenerated
|
|
|
32
15
|
# deprecate_constant :IPad_Pro_4 not allow to point to new version (
|
|
33
16
|
IPad_Pro_4 = 'iPad Pro (11-inch) (4th generation)'.freeze
|
|
34
17
|
IPad_Pro_11_inch_4 = 'iPad Pro (11-inch) (4th generation)'.freeze
|
|
35
|
-
IPad_Pro_12_9_inch_4 = 'iPad Pro (12.9-inch) (4th generation)'.freeze
|
|
36
|
-
IPad_Pro_12_9_inch_5 = 'iPad Pro (12.9-inch) (5th generation)'.freeze
|
|
37
|
-
IPad_Pro_12_9_inch_6 = 'iPad Pro (12.9-inch) (6th generation)'.freeze
|
|
38
|
-
IPhone_6s = 'iPhone 6s'.freeze
|
|
39
|
-
IPhone_6s_Plus = 'iPhone 6s Plus'.freeze
|
|
40
|
-
IPhone_7 = 'iPhone 7'.freeze
|
|
41
|
-
IPhone_7_Plus = 'iPhone 7 Plus'.freeze
|
|
42
18
|
IPhone_8 = 'iPhone 8'.freeze
|
|
43
19
|
IPhone_8_Plus = 'iPhone 8 Plus'.freeze
|
|
44
20
|
IPhone_X = 'iPhone X'.freeze
|
|
@@ -48,7 +24,6 @@ module IosDeviceNameGenerated
|
|
|
48
24
|
# deprecate_constant :IPhone_XS not allow to point to new version (
|
|
49
25
|
IPhone_XS = 'iPhone Xs'.freeze
|
|
50
26
|
IPhone_Xs = 'iPhone Xs'.freeze
|
|
51
|
-
IPhone_Xs_Max = 'iPhone Xs Max'.freeze
|
|
52
27
|
IPhone_11 = 'iPhone 11'.freeze
|
|
53
28
|
IPhone_11_Pro_Max = 'iPhone 11 Pro Max'.freeze
|
|
54
29
|
IPhone_11_Pro = 'iPhone 11 Pro'.freeze
|
|
@@ -57,66 +32,28 @@ module IosDeviceNameGenerated
|
|
|
57
32
|
IPhone_12_Pro_Max = 'iPhone 12 Pro Max'.freeze
|
|
58
33
|
IPhone_12_Pro = 'iPhone 12 Pro'.freeze
|
|
59
34
|
IPhone_13 = 'iPhone 13'.freeze
|
|
60
|
-
IPhone_13_mini = 'iPhone 13 mini'.freeze
|
|
61
35
|
IPhone_13_Pro_Max = 'iPhone 13 Pro Max'.freeze
|
|
62
36
|
IPhone_13_Pro = 'iPhone 13 Pro'.freeze
|
|
63
37
|
IPhone_14 = 'iPhone 14'.freeze
|
|
64
|
-
IPhone_14_Plus = 'iPhone 14 Plus'.freeze
|
|
65
|
-
IPhone_14_Pro = 'iPhone 14 Pro'.freeze
|
|
66
38
|
IPhone_14_Pro_Max = 'iPhone 14 Pro Max'.freeze
|
|
67
39
|
IPhone_15 = 'iPhone 15'.freeze
|
|
68
|
-
IPhone_15_Plus = 'iPhone 15 Plus'.freeze
|
|
69
|
-
IPhone_15_Pro = 'iPhone 15 Pro'.freeze
|
|
70
40
|
IPhone_15_Pro_Max = 'iPhone 15 Pro Max'.freeze
|
|
71
41
|
|
|
72
|
-
# Deprecated: Use IosDeviceName::IPhone_SE_1 instead.
|
|
73
|
-
# deprecate_constant :IPhone_SE not allow to point to new version (
|
|
74
|
-
IPhone_SE = 'iPhone SE (1st generation)'.freeze
|
|
75
|
-
IPhone_SE_1 = 'iPhone SE (1st generation)'.freeze
|
|
76
|
-
IPhone_SE_2 = 'iPhone SE (2nd generation)'.freeze
|
|
77
|
-
IPhone_SE_3 = 'iPhone SE (3rd generation)'.freeze
|
|
78
|
-
IPod_touch_7 = 'iPod touch (7th generation)'.freeze
|
|
79
|
-
|
|
80
42
|
def enum_values
|
|
81
43
|
[
|
|
82
|
-
IPad_5,
|
|
83
|
-
IPad_6,
|
|
84
44
|
IPad_7,
|
|
85
|
-
IPad_8,
|
|
86
45
|
IPad_9,
|
|
87
|
-
IPad_10,
|
|
88
|
-
IPad_Air_2,
|
|
89
|
-
IPad_Air_3,
|
|
90
46
|
IPad_Air_4,
|
|
91
|
-
IPad_Air_5,
|
|
92
|
-
IPad_mini_4,
|
|
93
|
-
IPad_mini_5,
|
|
94
|
-
IPad_mini_6,
|
|
95
|
-
IPad_Pro_9_7_inch_1,
|
|
96
|
-
IPad_Pro_10_5_inch_1,
|
|
97
|
-
IPad_Pro_11_inch_1,
|
|
98
|
-
IPad_Pro_12_9_inch_1,
|
|
99
|
-
IPad_Pro_11_inch_2,
|
|
100
|
-
IPad_Pro_12_9_inch_2,
|
|
101
|
-
IPad_Pro_11_inch_3,
|
|
102
47
|
IPad_Pro_3, # Deprecated: Use IosDeviceName::IPad_Pro_12_9_inch_3 instead.
|
|
103
48
|
IPad_Pro_12_9_inch_3,
|
|
104
49
|
IPad_Pro_4, # Deprecated: Use IosDeviceName::IPad_Pro_11_inch_4 instead.
|
|
105
50
|
IPad_Pro_11_inch_4,
|
|
106
|
-
IPad_Pro_12_9_inch_4,
|
|
107
|
-
IPad_Pro_12_9_inch_5,
|
|
108
|
-
IPad_Pro_12_9_inch_6,
|
|
109
|
-
IPhone_6s,
|
|
110
|
-
IPhone_6s_Plus,
|
|
111
|
-
IPhone_7,
|
|
112
|
-
IPhone_7_Plus,
|
|
113
51
|
IPhone_8,
|
|
114
52
|
IPhone_8_Plus,
|
|
115
53
|
IPhone_X,
|
|
116
54
|
IPhone_XR,
|
|
117
55
|
IPhone_XS, # Deprecated: Use IosDeviceName::IPhone_Xs instead.
|
|
118
56
|
IPhone_Xs,
|
|
119
|
-
IPhone_Xs_Max,
|
|
120
57
|
IPhone_11,
|
|
121
58
|
IPhone_11_Pro_Max,
|
|
122
59
|
IPhone_11_Pro,
|
|
@@ -125,22 +62,12 @@ module IosDeviceNameGenerated
|
|
|
125
62
|
IPhone_12_Pro_Max,
|
|
126
63
|
IPhone_12_Pro,
|
|
127
64
|
IPhone_13,
|
|
128
|
-
IPhone_13_mini,
|
|
129
65
|
IPhone_13_Pro_Max,
|
|
130
66
|
IPhone_13_Pro,
|
|
131
67
|
IPhone_14,
|
|
132
|
-
IPhone_14_Plus,
|
|
133
|
-
IPhone_14_Pro,
|
|
134
68
|
IPhone_14_Pro_Max,
|
|
135
69
|
IPhone_15,
|
|
136
|
-
IPhone_15_Plus,
|
|
137
|
-
IPhone_15_Pro,
|
|
138
70
|
IPhone_15_Pro_Max,
|
|
139
|
-
IPhone_SE, # Deprecated: Use IosDeviceName::IPhone_SE_1 instead.
|
|
140
|
-
IPhone_SE_1,
|
|
141
|
-
IPhone_SE_2,
|
|
142
|
-
IPhone_SE_3,
|
|
143
|
-
IPod_touch_7,
|
|
144
71
|
]
|
|
145
72
|
end
|
|
146
73
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: eyes_selenium
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.
|
|
4
|
+
version: 6.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Applitools Team
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-
|
|
11
|
+
date: 2024-10-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: eyes_core
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - '='
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 6.
|
|
19
|
+
version: 6.4.0
|
|
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.
|
|
26
|
+
version: 6.4.0
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: selenium-webdriver
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -172,7 +172,7 @@ homepage: https://www.applitools.com
|
|
|
172
172
|
licenses:
|
|
173
173
|
- Applitools
|
|
174
174
|
metadata: {}
|
|
175
|
-
post_install_message:
|
|
175
|
+
post_install_message:
|
|
176
176
|
rdoc_options: []
|
|
177
177
|
require_paths:
|
|
178
178
|
- lib
|
|
@@ -187,8 +187,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
187
187
|
- !ruby/object:Gem::Version
|
|
188
188
|
version: '0'
|
|
189
189
|
requirements: []
|
|
190
|
-
rubygems_version: 3.
|
|
191
|
-
signing_key:
|
|
190
|
+
rubygems_version: 3.1.6
|
|
191
|
+
signing_key:
|
|
192
192
|
specification_version: 4
|
|
193
193
|
summary: Applitools Ruby Selenium SDK
|
|
194
194
|
test_files: []
|