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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0de79ce31a9a1b66dfca934d16fb84e0c80ac5a4c5e879e993832f53f9d92c06
4
- data.tar.gz: f92ab806fac107be92713d90b346b5dda5d326d7b1cbbbfc8c8a247acfceeb5d
3
+ metadata.gz: 1c449054320543727d2947b81c59237b08553bb460ed7d384855212a727a21a0
4
+ data.tar.gz: a7325b7824ccb04955755b9b2e53ead208006b8d9f68e5d77d7d58951628d5b7
5
5
  SHA512:
6
- metadata.gz: a6473e52c80d43cea5b5ee4f9dd49e5caf6db7f849bc926e032fc080c74ec69180553ab2d3973f6dc90028f6cb4ed8c3f0c7f98a6484e9d2e9110a00f4a87b51
7
- data.tar.gz: 5ce8ec5e75ef9b22460bae6f767d5a9ecc1394c2b53fe70b4273bd8ce7a77b591a2a71b32ba80d101bebfb30356c73d43a0bc20c58d91c3b40997384f8743dd1
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
- $logger.info "Creating Appium session with #{sanitize_url(config.appium_server_url)}..."
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)
@@ -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 appium configuration
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
@@ -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://us-west-mobile-hub.bitbar.com/wd/hub\n" +
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://us-west-desktop-hub.bitbar.com/wd/hub",
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://us-west-mobile-hub.bitbar.com/wd/hub'
273
- options[Option::SELENIUM_SERVER] ||= ENV['MAZE_SELENIUM_SERVER'] || 'https://us-west-desktop-hub.bitbar.com/wd/hub'
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.8.0'
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.8.0
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-03 00:00:00.000000000 Z
12
+ date: 2025-12-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cucumber