bugsnag-maze-runner 10.8.0 → 10.9.1
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/features/steps/browser_steps.rb +4 -0
- data/lib/maze/client/appium/base_client.rb +2 -8
- data/lib/maze/client/selenium/base_client.rb +2 -0
- data/lib/maze/configuration.rb +5 -1
- data/lib/maze/helper.rb +8 -0
- data/lib/maze/option/parser.rb +4 -4
- data/lib/maze.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1c449054320543727d2947b81c59237b08553bb460ed7d384855212a727a21a0
|
|
4
|
+
data.tar.gz: a7325b7824ccb04955755b9b2e53ead208006b8d9f68e5d77d7d58951628d5b7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f7ba9aab7de5a564f2e54ef9e03087c1e31c94084955c60c0f57267f96c68e5a3e8b9a86ada85fdfccddbeadf4f243a6c5e6456efb5c9a9c6742943943d98717
|
|
7
|
+
data.tar.gz: 45e277bf469a8281b194f113063316d2fcbdf3b978364845cff9a4a39cb43a1363973d0fccbe162bd2d14c04a0cb9342102a973dd8ea3c9e4715f9feb4cc500c
|
|
@@ -8,6 +8,10 @@ When('I navigate to the URL {string}') do |path|
|
|
|
8
8
|
$logger.error("#{exception.class} occurred during navigation attempt with message: #{exception.message}")
|
|
9
9
|
$logger.error("Restarting driver and retrying navigation to: #{path}")
|
|
10
10
|
Maze.driver.restart_driver
|
|
11
|
+
if Maze.config.reset_on_navigation_failure
|
|
12
|
+
$logger.info 'Resetting request lists as Maze.config.reset_on_navigation_failure is set'
|
|
13
|
+
Maze::Server.reset!
|
|
14
|
+
end
|
|
11
15
|
Maze.driver.navigate.to path
|
|
12
16
|
# If a further error occurs it will get thrown as normal
|
|
13
17
|
end
|
|
@@ -24,13 +24,6 @@ module Maze
|
|
|
24
24
|
@start_attempts = 0
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
def sanitize_url(url)
|
|
28
|
-
uri = URI.parse(url)
|
|
29
|
-
uri.user = nil
|
|
30
|
-
uri.password = nil
|
|
31
|
-
uri.to_s
|
|
32
|
-
end
|
|
33
|
-
|
|
34
27
|
def start_session
|
|
35
28
|
prepare_session
|
|
36
29
|
|
|
@@ -96,7 +89,8 @@ module Maze
|
|
|
96
89
|
config.capabilities,
|
|
97
90
|
config.locator
|
|
98
91
|
|
|
99
|
-
|
|
92
|
+
sanitized_url = Maze::Helper.sanitize_url(config.appium_server_url)
|
|
93
|
+
$logger.info "Creating Appium session with #{sanitized_url}..."
|
|
100
94
|
result = driver.start_driver
|
|
101
95
|
if result
|
|
102
96
|
# Log details of this session
|
|
@@ -16,6 +16,8 @@ module Maze
|
|
|
16
16
|
$logger.trace "Attempting to start Selenium driver with capabilities: #{config.capabilities.to_json}"
|
|
17
17
|
$logger.trace "Attempt #{attempts}"
|
|
18
18
|
begin
|
|
19
|
+
sanitized_url = Maze::Helper.sanitize_url(selenium_url)
|
|
20
|
+
$logger.info "Creating Selenium session with #{sanitized_url}..."
|
|
19
21
|
Maze.driver = Maze::Driver::Browser.new(:remote, selenium_url, config.capabilities)
|
|
20
22
|
Maze.driver.start_driver
|
|
21
23
|
Maze.driver.set_implicit_wait(20)
|
data/lib/maze/configuration.rb
CHANGED
|
@@ -15,6 +15,7 @@ module Maze
|
|
|
15
15
|
self.span_timestamp_validation = true
|
|
16
16
|
self.unmanaged_traces_mode = false
|
|
17
17
|
self.client_mode_validation = true
|
|
18
|
+
self.reset_on_navigation_failure = false
|
|
18
19
|
end
|
|
19
20
|
|
|
20
21
|
#
|
|
@@ -108,7 +109,7 @@ module Maze
|
|
|
108
109
|
attr_accessor :client_mode_validation
|
|
109
110
|
|
|
110
111
|
#
|
|
111
|
-
# General
|
|
112
|
+
# General Appium/Selenium configuration
|
|
112
113
|
#
|
|
113
114
|
|
|
114
115
|
# Element locator strategy, :id or :accessibility_id
|
|
@@ -138,6 +139,9 @@ module Maze
|
|
|
138
139
|
# Folder to push app files to on Android
|
|
139
140
|
attr_accessor :android_app_files_directory
|
|
140
141
|
|
|
142
|
+
# Call Maze::Server.reset! if browser navigation fails
|
|
143
|
+
attr_accessor :reset_on_navigation_failure
|
|
144
|
+
|
|
141
145
|
#
|
|
142
146
|
# Device farm specific configuration
|
|
143
147
|
#
|
data/lib/maze/helper.rb
CHANGED
|
@@ -118,6 +118,14 @@ module Maze
|
|
|
118
118
|
def to_friendly_filename(string)
|
|
119
119
|
string.gsub(/[:"& ]/, "_").gsub(/_+/, "_")
|
|
120
120
|
end
|
|
121
|
+
|
|
122
|
+
# @return URL without any embedded username or password
|
|
123
|
+
def sanitize_url(url)
|
|
124
|
+
uri = URI.parse(url)
|
|
125
|
+
uri.user = nil
|
|
126
|
+
uri.password = nil
|
|
127
|
+
uri.to_s
|
|
128
|
+
end
|
|
121
129
|
end
|
|
122
130
|
end
|
|
123
131
|
end
|
data/lib/maze/option/parser.rb
CHANGED
|
@@ -159,12 +159,12 @@ module Maze
|
|
|
159
159
|
opt Option::APPIUM_SERVER,
|
|
160
160
|
"Appium server URL. Defaults are: \n" +
|
|
161
161
|
" --farm=local - MAZE_APPIUM_SERVER or http://localhost:4723/wd/hub\n" +
|
|
162
|
-
" --farm=bb - MAZE_APPIUM_SERVER or https://
|
|
162
|
+
" --farm=bb - MAZE_APPIUM_SERVER or https://eu-mobile-hub.bitbar.com/wd/hub\n" +
|
|
163
163
|
'Not used for --farm=bs',
|
|
164
164
|
short: :none,
|
|
165
165
|
type: :string
|
|
166
166
|
opt Option::SELENIUM_SERVER,
|
|
167
|
-
"Selenium server URL. Only used for --farm=bb, defaulting to MAZE_SELENIUM_SERVER or https://
|
|
167
|
+
"Selenium server URL. Only used for --farm=bb, defaulting to MAZE_SELENIUM_SERVER or https://eu-desktop-hub.bitbar.com/wd/hub",
|
|
168
168
|
short: :none,
|
|
169
169
|
type: :string
|
|
170
170
|
|
|
@@ -269,8 +269,8 @@ module Maze
|
|
|
269
269
|
when 'bb'
|
|
270
270
|
options[Option::USERNAME] ||= ENV['BITBAR_USERNAME']
|
|
271
271
|
options[Option::ACCESS_KEY] ||= ENV['BITBAR_ACCESS_KEY']
|
|
272
|
-
options[Option::APPIUM_SERVER] ||= ENV['MAZE_APPIUM_SERVER'] || 'https://
|
|
273
|
-
options[Option::SELENIUM_SERVER] ||= ENV['MAZE_SELENIUM_SERVER'] || 'https://
|
|
272
|
+
options[Option::APPIUM_SERVER] ||= ENV['MAZE_APPIUM_SERVER'] || 'https://eu-mobile-hub.bitbar.com/wd/hub'
|
|
273
|
+
options[Option::SELENIUM_SERVER] ||= ENV['MAZE_SELENIUM_SERVER'] || 'https://eu-desktop-hub.bitbar.com/wd/hub'
|
|
274
274
|
end
|
|
275
275
|
|
|
276
276
|
options[Option::BUGSNAG_REPEATER_API_KEY] ||= ENV['MAZE_REPEATER_API_KEY']
|
data/lib/maze.rb
CHANGED
|
@@ -8,7 +8,7 @@ require_relative 'maze/timers'
|
|
|
8
8
|
# providing an alternative to the proliferation of global variables or singletons.
|
|
9
9
|
module Maze
|
|
10
10
|
|
|
11
|
-
VERSION = '10.
|
|
11
|
+
VERSION = '10.9.1'
|
|
12
12
|
|
|
13
13
|
class << self
|
|
14
14
|
attr_accessor :check, :driver, :internal_hooks, :mode, :start_time, :dynamic_retry, :public_address,
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bugsnag-maze-runner
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 10.
|
|
4
|
+
version: 10.9.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Steve Kirkland
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2025-12-
|
|
12
|
+
date: 2025-12-10 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: cucumber
|