onlyoffice_webdriver_wrapper 1.10.1 → 1.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/onlyoffice_webdriver_wrapper/helpers/bin/geckodriver +0 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chrome_version_helper.rb +5 -3
- data/lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/{chromedriver_linux_103 → chromedriver_linux_105} +0 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/{chromedriver_linux_102 → chromedriver_linux_106} +0 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_mac +0 -0
- data/lib/onlyoffice_webdriver_wrapper/version.rb +1 -1
- data/lib/onlyoffice_webdriver_wrapper/webdriver/wait_until_methods.rb +3 -18
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_js_methods.rb +1 -1
- data/lib/onlyoffice_webdriver_wrapper/webdriver.rb +2 -12
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f6e4addab1cc565a0588e548dd13520f75024ec5a5ae3109b37b937ae2ba702c
|
4
|
+
data.tar.gz: 70e48e5ce04cda996a481506460ec2faee4616eb5d91d23f5474db575924d22b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c43c93587430fc5009fc887271bc38abe68904299a394aa415f5bdd37a874a3f8a57dc6603746b346b2c05a1d3d0c688026f5135be5c721641facf7ce2597cb1
|
7
|
+
data.tar.gz: 2cd4253527294f00268412e20b5eaf47518d96f96b321ac05b98a614af87510f4148937bdae37ff459cd84ac6c359cdfeef4dba59ffb93c9f9c017062eb7c308
|
Binary file
|
@@ -20,10 +20,12 @@ module OnlyofficeWebdriverWrapper
|
|
20
20
|
@chrome_version = unknown_chrome_version
|
21
21
|
end
|
22
22
|
|
23
|
+
# @param [Symbol] force_os force OS for chrome version (`:linux` or `:mac`),
|
24
|
+
# if empty - will try to autodetect current os
|
23
25
|
# @return [String] path to chromedriver
|
24
|
-
def chromedriver_path
|
25
|
-
return default_mac if OSHelper.mac?
|
26
|
-
return default_linux if chrome_version == unknown_chrome_version
|
26
|
+
def chromedriver_path(force_os = nil)
|
27
|
+
return default_mac if OSHelper.mac? || force_os == :mac
|
28
|
+
return default_linux if (chrome_version == unknown_chrome_version) || force_os == :linux
|
27
29
|
|
28
30
|
chromedriver_path_cur_chrome
|
29
31
|
end
|
Binary file
|
Binary file
|
data/lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_mac
CHANGED
Binary file
|
@@ -33,7 +33,7 @@ module OnlyofficeWebdriverWrapper
|
|
33
33
|
# @param [String] xpath_name to find object
|
34
34
|
# @param [Integer] timeout How much to wait
|
35
35
|
# @raise [StandardError] error if element not found for timeout
|
36
|
-
# @return [
|
36
|
+
# @return [Boolean] true if element is visible after some timeout
|
37
37
|
def wait_until_element_visible(xpath_name, timeout = 15)
|
38
38
|
wait_until_element_present(xpath_name)
|
39
39
|
time = 0
|
@@ -41,24 +41,9 @@ module OnlyofficeWebdriverWrapper
|
|
41
41
|
sleep(1)
|
42
42
|
time += 1
|
43
43
|
end
|
44
|
-
return unless time >= timeout
|
45
|
-
|
46
|
-
webdriver_error("Element #{xpath_name} not visible for #{timeout} seconds")
|
47
|
-
end
|
44
|
+
return true unless time >= timeout
|
48
45
|
|
49
|
-
|
50
|
-
# @param [String] xpath_name xpath of element
|
51
|
-
# @param [Integer] period_of_wait how much time sleep each iteration of wait
|
52
|
-
# @param [Integer] critical_time maximum time for wait for element
|
53
|
-
# @return [nil]
|
54
|
-
def wait_element(xpath_name, period_of_wait = 1, critical_time = 3)
|
55
|
-
wait_until_element_present(xpath_name)
|
56
|
-
time = 0
|
57
|
-
until element_visible?(xpath_name)
|
58
|
-
sleep(period_of_wait)
|
59
|
-
time += 1
|
60
|
-
return if time == critical_time
|
61
|
-
end
|
46
|
+
webdriver_error("Element `#{xpath_name}` not visible for #{timeout} seconds")
|
62
47
|
end
|
63
48
|
|
64
49
|
# Wait until some element present
|
@@ -16,7 +16,7 @@ module OnlyofficeWebdriverWrapper
|
|
16
16
|
# Usually this mean browser hang up or some modular
|
17
17
|
# window is blocking browser for execution of any code
|
18
18
|
# in that case performing `webdriver_error` only cause forever loop
|
19
|
-
# since webdriver_error trying to
|
19
|
+
# since webdriver_error trying to current_url or make screenshots
|
20
20
|
raise(e.class, "Timeout Error #{e} happened while executing #{script}")
|
21
21
|
rescue StandardError => e
|
22
22
|
webdriver_error(e, "Exception #{e} in execute_javascript: #{script}")
|
@@ -30,7 +30,7 @@ require_relative 'webdriver/webdriver_browser_log_helper'
|
|
30
30
|
|
31
31
|
# Namespace of this gem
|
32
32
|
module OnlyofficeWebdriverWrapper
|
33
|
-
#
|
33
|
+
# Class for working with webdriver, main class of project
|
34
34
|
class WebDriver
|
35
35
|
include ChromeHelper
|
36
36
|
include ClickMethods
|
@@ -110,16 +110,7 @@ module OnlyofficeWebdriverWrapper
|
|
110
110
|
# @param [Integer] vertical_shift y value
|
111
111
|
# @return [void]
|
112
112
|
def open_dropdown_selector(xpath_name, horizontal_shift = 30, vertical_shift = 0)
|
113
|
-
|
114
|
-
if @browser == :firefox || @browser == :safari
|
115
|
-
set_style_attribute("#{xpath_name}/button", 'display', 'none')
|
116
|
-
set_style_attribute(xpath_name, 'display', 'inline')
|
117
|
-
element.click
|
118
|
-
set_style_attribute("#{xpath_name}/button", 'display', 'inline-block')
|
119
|
-
set_style_attribute(xpath_name, 'display', 'block')
|
120
|
-
else
|
121
|
-
move_to_driver_action(xpath_name, horizontal_shift, vertical_shift).click.perform
|
122
|
-
end
|
113
|
+
move_to_driver_action(xpath_name, horizontal_shift, vertical_shift).click.perform
|
123
114
|
end
|
124
115
|
|
125
116
|
# Perform an action on coordinate
|
@@ -222,7 +213,6 @@ module OnlyofficeWebdriverWrapper
|
|
222
213
|
exception = RuntimeError
|
223
214
|
end
|
224
215
|
select_top_frame
|
225
|
-
current_url = get_url
|
226
216
|
raise exception, "#{error_message}\n\nPage address: #{current_url}\n\nError #{webdriver_screenshot}"
|
227
217
|
end
|
228
218
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onlyoffice_webdriver_wrapper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ONLYOFFICE
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2022-
|
14
|
+
date: 2022-10-10 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: headless
|
@@ -275,9 +275,9 @@ files:
|
|
275
275
|
- lib/onlyoffice_webdriver_wrapper/helpers/bin/geckodriver
|
276
276
|
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper.rb
|
277
277
|
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chrome_version_helper.rb
|
278
|
-
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_linux_102
|
279
|
-
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_linux_103
|
280
278
|
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_linux_104
|
279
|
+
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_linux_105
|
280
|
+
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_linux_106
|
281
281
|
- lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper/chromedriver_bin/chromedriver_mac
|
282
282
|
- lib/onlyoffice_webdriver_wrapper/helpers/firefox_helper.rb
|
283
283
|
- lib/onlyoffice_webdriver_wrapper/helpers/firefox_helper/save_to_disk_files.list
|
@@ -335,7 +335,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
335
335
|
- !ruby/object:Gem::Version
|
336
336
|
version: '0'
|
337
337
|
requirements: []
|
338
|
-
rubygems_version: 3.3.
|
338
|
+
rubygems_version: 3.3.7
|
339
339
|
signing_key:
|
340
340
|
specification_version: 4
|
341
341
|
summary: ONLYOFFICE Webdriver Wrapper Gem
|