onlyoffice_webdriver_wrapper 0.0.2 → 0.1.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/lib/onlyoffice_webdriver_wrapper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/dimensions.rb +6 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/bin/chromedriver +0 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/bin/chromedriver_mac +0 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/bin/geckodriver +0 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/chrome_helper.rb +10 -3
- data/lib/onlyoffice_webdriver_wrapper/helpers/firefox_helper.rb +8 -2
- data/lib/onlyoffice_webdriver_wrapper/helpers/headless_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/headless_helper/real_display_tools.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/headless_helper/ruby_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/helpers/os_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/version.rb +3 -1
- data/lib/onlyoffice_webdriver_wrapper/webdriver.rb +18 -13
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_alert_helper.rb +4 -4
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_attributes_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_browser_info_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_browser_log_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_exceptions.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_js_methods.rb +7 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_screenshot_helper.rb +2 -0
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_style_helper.rb +3 -1
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_tab_helper.rb +6 -2
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_type_helper.rb +2 -17
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_user_agent_helper.rb +6 -4
- metadata +10 -12
- data/lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_extension.rb +0 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 328cc206dfe7a1b7bdca4e61b4b035fe2ec96c56323302be27ffea9c2dcde56d
|
4
|
+
data.tar.gz: e8d09c9790c5911e6415eff49fc70d61eda46f60f8c5affa922850ee66107d68
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 97c3e656c469845ef2f6d4e643ba4625043d608456d544d5afc62aeeb2679f007349a2e6fbfc9d8c217a4c797f00ddd2577ffd49177a892a20a2d68553321132
|
7
|
+
data.tar.gz: cd6069601e477776ed59f791efc4e140fbfcd867cb427b786907764c469f2a3368a6b3afc2cf1c7fd79c263713618ee62297a6fe10d2a9fb2a2d56519c250817
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Class for working with cursor coordinates
|
3
5
|
class Dimensions
|
@@ -12,5 +14,9 @@ module OnlyofficeWebdriverWrapper
|
|
12
14
|
alias height top
|
13
15
|
alias x left
|
14
16
|
alias y top
|
17
|
+
|
18
|
+
def to_s
|
19
|
+
"Dimensions(left: #{@left}, top: #{@top})"
|
20
|
+
end
|
15
21
|
end
|
16
22
|
end
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Class for working with Chrome
|
3
5
|
module ChromeHelper
|
@@ -14,6 +16,10 @@ module OnlyofficeWebdriverWrapper
|
|
14
16
|
File.join(File.dirname(__FILE__), driver_name)
|
15
17
|
end
|
16
18
|
|
19
|
+
def chrome_service
|
20
|
+
@chrome_service ||= Selenium::WebDriver::Chrome::Service.new(path: chromedriver_path)
|
21
|
+
end
|
22
|
+
|
17
23
|
# @return [Webdriver::Chrome] Chrome webdriver
|
18
24
|
def start_chrome_driver
|
19
25
|
prefs = {
|
@@ -22,8 +28,8 @@ module OnlyofficeWebdriverWrapper
|
|
22
28
|
default_directory: download_directory
|
23
29
|
},
|
24
30
|
profile: {
|
25
|
-
|
26
|
-
'
|
31
|
+
default_content_setting_values: {
|
32
|
+
'automatic_downloads': 1
|
27
33
|
}
|
28
34
|
},
|
29
35
|
credentials_enable_service: false
|
@@ -31,13 +37,14 @@ module OnlyofficeWebdriverWrapper
|
|
31
37
|
caps = Selenium::WebDriver::Remote::Capabilities.chrome
|
32
38
|
caps[:logging_prefs] = { browser: 'ALL' }
|
33
39
|
caps[:proxy] = Selenium::WebDriver::Proxy.new(ssl: "#{@proxy.proxy_address}:#{@proxy.proxy_port}") if @proxy
|
40
|
+
caps['chromeOptions'] = { w3c: false }
|
34
41
|
if ip_of_remote_server.nil?
|
35
42
|
switches = add_useragent_to_switches(DEFAULT_CHROME_SWITCHES)
|
36
43
|
options = Selenium::WebDriver::Chrome::Options.new(args: switches,
|
37
44
|
prefs: prefs)
|
38
45
|
webdriver_options = { options: options,
|
39
46
|
desired_capabilities: caps,
|
40
|
-
|
47
|
+
service: chrome_service }
|
41
48
|
begin
|
42
49
|
driver = Selenium::WebDriver.for :chrome, webdriver_options
|
43
50
|
rescue Selenium::WebDriver::Error::WebDriverError,
|
@@ -1,9 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Module for working with firefox
|
3
5
|
module FirefoxHelper
|
6
|
+
def firefox_service
|
7
|
+
geckodriver = File.join(File.dirname(__FILE__), 'bin/geckodriver')
|
8
|
+
@firefox_service ||= Selenium::WebDriver::Firefox::Service.new(path: geckodriver)
|
9
|
+
end
|
10
|
+
|
4
11
|
# @return [Webdriver::Firefox] firefox webdriver
|
5
12
|
def start_firefox_driver
|
6
|
-
geckodriver = File.join(File.dirname(__FILE__), 'bin/geckodriver')
|
7
13
|
profile = Selenium::WebDriver::Firefox::Profile.new
|
8
14
|
profile['browser.download.folderList'] = 2
|
9
15
|
profile['browser.helperApps.neverAsk.saveToDisk'] = 'application/doct, application/mspowerpoint, application/msword, application/octet-stream, application/oleobject, application/pdf, application/powerpoint, application/pptt, application/rtf, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/vnd.oasis.opendocument.spreadsheet, application/vnd.oasis.opendocument.text, application/vnd.openxmlformats-officedocument.presentationml.presentation, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/x-compressed, application/x-excel, application/xlst, application/x-msexcel, application/x-mspowerpoint, application/x-rtf, application/x-zip-compressed, application/zip, image/jpeg, image/pjpeg, image/pjpeg, image/x-jps, message/rfc822, multipart/x-zip, text/csv, text/html, text/html, text/plain, text/richtext'
|
@@ -14,7 +20,7 @@ module OnlyofficeWebdriverWrapper
|
|
14
20
|
caps = Selenium::WebDriver::Remote::Capabilities.firefox
|
15
21
|
caps[:proxy] = Selenium::WebDriver::Proxy.new(ssl: "#{@proxy.proxy_address}:#{@proxy.proxy_port}") if @proxy
|
16
22
|
if ip_of_remote_server.nil?
|
17
|
-
driver = Selenium::WebDriver.for :firefox, options: options,
|
23
|
+
driver = Selenium::WebDriver.for :firefox, options: options, service: firefox_service, desired_capabilities: caps
|
18
24
|
driver.manage.window.size = Selenium::WebDriver::Dimension.new(headless.resolution_x, headless.resolution_y) if headless.running?
|
19
25
|
driver
|
20
26
|
else
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'onlyoffice_file_helper'
|
2
4
|
require 'page-object'
|
3
5
|
require 'securerandom'
|
@@ -10,7 +12,6 @@ require_relative 'webdriver/webdriver_attributes_helper'
|
|
10
12
|
require_relative 'webdriver/webdriver_browser_info_helper'
|
11
13
|
require_relative 'webdriver/webdriver_type_helper'
|
12
14
|
require_relative 'webdriver/webdriver_exceptions'
|
13
|
-
require_relative 'webdriver/webdriver_extension'
|
14
15
|
require_relative 'webdriver/webdriver_helper'
|
15
16
|
require_relative 'webdriver/webdriver_js_methods'
|
16
17
|
require_relative 'webdriver/webdriver_screenshot_helper'
|
@@ -41,6 +42,8 @@ module OnlyofficeWebdriverWrapper
|
|
41
42
|
# @return [Array, String] default switches for chrome
|
42
43
|
attr_accessor :driver
|
43
44
|
attr_accessor :browser
|
45
|
+
# @return [True, False] is browser currently running
|
46
|
+
attr_reader :browser_running
|
44
47
|
# @return [Symbol] device of which we try to simulate, default - :desktop_linux
|
45
48
|
attr_accessor :device
|
46
49
|
attr_accessor :ip_of_remote_server
|
@@ -74,6 +77,7 @@ module OnlyofficeWebdriverWrapper
|
|
74
77
|
else
|
75
78
|
raise 'Unknown Browser: ' + browser.to_s
|
76
79
|
end
|
80
|
+
@browser_running = true
|
77
81
|
end
|
78
82
|
|
79
83
|
def add_web_console_error(log)
|
@@ -94,6 +98,8 @@ module OnlyofficeWebdriverWrapper
|
|
94
98
|
end
|
95
99
|
|
96
100
|
def quit
|
101
|
+
return unless browser_running
|
102
|
+
|
97
103
|
begin
|
98
104
|
@driver.execute_script('window.onbeforeunload = null') # off popup window
|
99
105
|
rescue StandardError
|
@@ -107,6 +113,7 @@ module OnlyofficeWebdriverWrapper
|
|
107
113
|
alert_confirm
|
108
114
|
@headless.stop
|
109
115
|
FileUtils.remove_dir(@download_directory) if Dir.exist?(@download_directory)
|
116
|
+
@browser_running = false
|
110
117
|
end
|
111
118
|
|
112
119
|
def get_element(object_identification)
|
@@ -199,12 +206,11 @@ module OnlyofficeWebdriverWrapper
|
|
199
206
|
end
|
200
207
|
|
201
208
|
def remove_class_by_jquery(selector, class_name)
|
202
|
-
execute_javascript(
|
203
|
-
execute_javascript("$('#{selector}').removeClass('#{class_name}');")
|
209
|
+
execute_javascript("#{jquery_selector_by_xpath(selector)}.removeClass('#{class_name}');")
|
204
210
|
end
|
205
211
|
|
206
212
|
def add_class_by_jquery(selector, class_name)
|
207
|
-
execute_javascript("
|
213
|
+
execute_javascript("#{jquery_selector_by_xpath(selector)}.addClass('#{class_name}');")
|
208
214
|
end
|
209
215
|
|
210
216
|
# Perform drag'n'drop action in one element (for example on big canvas area)
|
@@ -219,15 +225,14 @@ module OnlyofficeWebdriverWrapper
|
|
219
225
|
# * +mouse_release+ - release mouse after move
|
220
226
|
def drag_and_drop(xpath, x1, y1, x2, y2, mouse_release: true)
|
221
227
|
canvas = get_element(xpath)
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
webdriver_error("drag_and_drop(#{xpath}, #{x1}, #{y1}, #{x2}, #{y2}) TypeError: #{e.message}")
|
228
|
+
|
229
|
+
move_action = @driver.action
|
230
|
+
.move_to(canvas, x1.to_i, y1.to_i)
|
231
|
+
.click_and_hold
|
232
|
+
.move_by(x2, y2)
|
233
|
+
move_action = move_action.release if mouse_release
|
234
|
+
|
235
|
+
move_action.perform
|
231
236
|
end
|
232
237
|
|
233
238
|
# Perform drag'n'drop one whole element
|
@@ -1,10 +1,10 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Methods for working with alerts
|
3
5
|
module WebdriverAlertHelper
|
4
6
|
def alert_confirm
|
5
|
-
@driver.switch_to.alert.accept
|
6
|
-
rescue StandardError
|
7
|
-
Selenium::WebDriver::Error::NoAlertOpenError
|
7
|
+
@driver.switch_to.alert.accept if alert_exists?
|
8
8
|
end
|
9
9
|
|
10
10
|
# Check if alert exists
|
@@ -12,7 +12,7 @@ module OnlyofficeWebdriverWrapper
|
|
12
12
|
def alert_exists?
|
13
13
|
@driver.switch_to.alert.text
|
14
14
|
true
|
15
|
-
rescue Selenium::WebDriver::Error::
|
15
|
+
rescue Selenium::WebDriver::Error::NoSuchAlertError, Errno::ECONNREFUSED
|
16
16
|
false
|
17
17
|
end
|
18
18
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Methods for webdriver for calling Javascript
|
3
5
|
module WebdriverJsMethods
|
@@ -9,6 +11,11 @@ module OnlyofficeWebdriverWrapper
|
|
9
11
|
webdriver_error("Exception #{e} in execute_javascript: #{script}")
|
10
12
|
end
|
11
13
|
|
14
|
+
# @return [String] string to select by xpath
|
15
|
+
def jquery_selector_by_xpath(xpath)
|
16
|
+
"$(document.evaluate('#{xpath}', document, null, XPathResult.ANY_TYPE, null).iterateNext())"
|
17
|
+
end
|
18
|
+
|
12
19
|
def type_to_locator_by_javascript(xpath_name, text)
|
13
20
|
escaped_text = text.gsub('\\', '\\\\\\\\').gsub('"', '\\"').gsub("\n", '\\n')
|
14
21
|
execute_javascript("document.evaluate('#{xpath_name}', document, null, XPathResult.ANY_TYPE, null).iterateNext().value=\"#{escaped_text}\";")
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Webdriver style helper
|
3
5
|
module WebdriverStyleHelper
|
@@ -12,7 +14,7 @@ module OnlyofficeWebdriverWrapper
|
|
12
14
|
el_style = element.attribute('style')
|
13
15
|
unless el_style.empty?
|
14
16
|
found_style = el_style.split(';').find { |curr_param| curr_param.include?(style) }
|
15
|
-
found_style
|
17
|
+
found_style&.gsub(/\s?#{style}:/, '')
|
16
18
|
end
|
17
19
|
end.compact
|
18
20
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Module for work with tabs
|
3
5
|
module WebdriverTabHelper
|
@@ -17,7 +19,9 @@ module OnlyofficeWebdriverWrapper
|
|
17
19
|
OnlyofficeLoggerHelper.log("Resize current window to #{width}x#{height}")
|
18
20
|
end
|
19
21
|
|
20
|
-
|
22
|
+
# @param after_switch_timeout [Integer] wait after switch to window
|
23
|
+
# non-zero to workaround bug with page load hanging up after switch
|
24
|
+
def switch_to_popup(after_switch_timeout: 3)
|
21
25
|
counter = 0
|
22
26
|
while tab_count < 2 && counter < 30
|
23
27
|
sleep 1
|
@@ -27,7 +31,7 @@ module OnlyofficeWebdriverWrapper
|
|
27
31
|
list_of_handlers = @driver.window_handles
|
28
32
|
last_window_handler = list_of_handlers.last
|
29
33
|
@driver.switch_to.window(last_window_handler)
|
30
|
-
sleep
|
34
|
+
sleep(after_switch_timeout) # Do not remove until problem with page loading stop resolved
|
31
35
|
end
|
32
36
|
|
33
37
|
# Get tab count
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Class for helping with type stuff
|
3
5
|
module WebdriverTypeHelper
|
@@ -56,23 +58,6 @@ module OnlyofficeWebdriverWrapper
|
|
56
58
|
element.send_keys text_to_send
|
57
59
|
end
|
58
60
|
|
59
|
-
def type_text_by_symbol(xpath_name, text_to_send, clear_content = true, click_on_it = false, by_action = false, by_element_send_key = false)
|
60
|
-
click_on_locator(xpath_name) if click_on_it
|
61
|
-
element = get_element(xpath_name)
|
62
|
-
if clear_content
|
63
|
-
element.clear
|
64
|
-
click_on_locator(xpath_name) if click_on_it
|
65
|
-
end
|
66
|
-
text_to_send.scan(/./).each do |symbol|
|
67
|
-
sleep(0.3)
|
68
|
-
if (@browser != :chrome && !by_action) || by_element_send_key
|
69
|
-
send_keys(element, symbol, :element_send_key)
|
70
|
-
else
|
71
|
-
send_keys(element, symbol, by_action)
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
61
|
def send_keys(xpath_name, text_to_send, by_action = true)
|
77
62
|
element = get_element(xpath_name)
|
78
63
|
@driver.action.click(element).perform if @browser == :firefox
|
@@ -1,10 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module OnlyofficeWebdriverWrapper
|
2
4
|
# Module for wokring with webdriver useragent
|
3
5
|
module WebdriverUserAgentHelper
|
4
|
-
USERAGENT_ANDROID_PHONE = 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MDB08M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.81 Mobile Safari/537.36'
|
5
|
-
USERAGENT_IPHONE = 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13F69 Safari/601.1'
|
6
|
-
USERAGENT_IPAD_AIR_2_SAFARI = 'Mozilla/5.0 (iPad; CPU OS 10_0 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Mobile/14A5346a Safari/602.1'
|
7
|
-
USERAGENT_NEXUS_10_CHROME = 'Mozilla/5.0 (Linux; Android 4.3; Nexus 10 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.23 Safari/537.36'
|
6
|
+
USERAGENT_ANDROID_PHONE = 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MDB08M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.81 Mobile Safari/537.36'
|
7
|
+
USERAGENT_IPHONE = 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13F69 Safari/601.1'
|
8
|
+
USERAGENT_IPAD_AIR_2_SAFARI = 'Mozilla/5.0 (iPad; CPU OS 10_0 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Mobile/14A5346a Safari/602.1'
|
9
|
+
USERAGENT_NEXUS_10_CHROME = 'Mozilla/5.0 (Linux; Android 4.3; Nexus 10 Build/JSS15Q) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.23 Safari/537.36'
|
8
10
|
|
9
11
|
# @return [String] user agent string for current device
|
10
12
|
def user_agent_for_device
|
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: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pavel Lobashov
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2019-10-18 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: headless
|
@@ -74,42 +74,42 @@ dependencies:
|
|
74
74
|
requirements:
|
75
75
|
- - "~>"
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version: 2
|
77
|
+
version: '2'
|
78
78
|
type: :runtime
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
82
|
- - "~>"
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version: 2
|
84
|
+
version: '2'
|
85
85
|
- !ruby/object:Gem::Dependency
|
86
86
|
name: selenium-webdriver
|
87
87
|
requirement: !ruby/object:Gem::Requirement
|
88
88
|
requirements:
|
89
89
|
- - '='
|
90
90
|
- !ruby/object:Gem::Version
|
91
|
-
version: 3.
|
91
|
+
version: 3.142.6
|
92
92
|
type: :runtime
|
93
93
|
prerelease: false
|
94
94
|
version_requirements: !ruby/object:Gem::Requirement
|
95
95
|
requirements:
|
96
96
|
- - '='
|
97
97
|
- !ruby/object:Gem::Version
|
98
|
-
version: 3.
|
98
|
+
version: 3.142.6
|
99
99
|
- !ruby/object:Gem::Dependency
|
100
100
|
name: watir
|
101
101
|
requirement: !ruby/object:Gem::Requirement
|
102
102
|
requirements:
|
103
103
|
- - "~>"
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version: 6
|
105
|
+
version: '6'
|
106
106
|
type: :runtime
|
107
107
|
prerelease: false
|
108
108
|
version_requirements: !ruby/object:Gem::Requirement
|
109
109
|
requirements:
|
110
110
|
- - "~>"
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version: 6
|
112
|
+
version: '6'
|
113
113
|
description: onlyoffice_webdriver_wrapper
|
114
114
|
email:
|
115
115
|
- shockwavenn@gmail.com
|
@@ -136,7 +136,6 @@ files:
|
|
136
136
|
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_browser_info_helper.rb
|
137
137
|
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_browser_log_helper.rb
|
138
138
|
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_exceptions.rb
|
139
|
-
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_extension.rb
|
140
139
|
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_helper.rb
|
141
140
|
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_js_methods.rb
|
142
141
|
- lib/onlyoffice_webdriver_wrapper/webdriver/webdriver_screenshot_helper.rb
|
@@ -156,15 +155,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
156
155
|
requirements:
|
157
156
|
- - ">="
|
158
157
|
- !ruby/object:Gem::Version
|
159
|
-
version: '2.
|
158
|
+
version: '2.3'
|
160
159
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
161
160
|
requirements:
|
162
161
|
- - ">="
|
163
162
|
- !ruby/object:Gem::Version
|
164
163
|
version: '0'
|
165
164
|
requirements: []
|
166
|
-
|
167
|
-
rubygems_version: 2.7.6
|
165
|
+
rubygems_version: 3.0.6
|
168
166
|
signing_key:
|
169
167
|
specification_version: 4
|
170
168
|
summary: ONLYOFFICE Webdriver Wrapper Gem
|