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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 38bd65e16f39df65c2513cf77d215d9df3e35511260a505f894b524cac93f7fa
4
- data.tar.gz: 4ae69daf079c905eef591f76376feea072eb13e500ef257b0d07f1b696f0ef8f
3
+ metadata.gz: f6e4addab1cc565a0588e548dd13520f75024ec5a5ae3109b37b937ae2ba702c
4
+ data.tar.gz: 70e48e5ce04cda996a481506460ec2faee4616eb5d91d23f5474db575924d22b
5
5
  SHA512:
6
- metadata.gz: fbd8f193fdb5e43da1ef26d14572d3f915d9152098c51673d141fa86236af37f5a547d0fa9a001d5a638a0a96fd72773b9616ac58a86802c3ef148de05d12bbd
7
- data.tar.gz: ea78ca635fdb7c87397962a2aa727295d9dfc37798bd5deaad338b463967fb95bbd3e83d5b4cd190062823fb52499ecf2795ca42f9891c9b2d393ebc566f8e89
6
+ metadata.gz: c43c93587430fc5009fc887271bc38abe68904299a394aa415f5bdd37a874a3f8a57dc6603746b346b2c05a1d3d0c688026f5135be5c721641facf7ce2597cb1
7
+ data.tar.gz: 2cd4253527294f00268412e20b5eaf47518d96f96b321ac05b98a614af87510f4148937bdae37ff459cd84ac6c359cdfeef4dba59ffb93c9f9c017062eb7c308
@@ -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
@@ -4,6 +4,6 @@ module OnlyofficeWebdriverWrapper
4
4
  # Module for storing version data
5
5
  module Version
6
6
  # @return [String] Current stable version of gem
7
- STRING = '1.10.1'
7
+ STRING = '1.12.0'
8
8
  end
9
9
  end
@@ -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 [void]
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
- # Wait until element present and visible
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 get_url or make screenshots
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
- # noinspection RubyTooManyMethodsInspection, RubyInstanceMethodNamingConvention, RubyParameterNamingConvention
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
- element = get_element(xpath_name)
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.10.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-08-10 00:00:00.000000000 Z
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.20
338
+ rubygems_version: 3.3.7
339
339
  signing_key:
340
340
  specification_version: 4
341
341
  summary: ONLYOFFICE Webdriver Wrapper Gem