bugsnag-maze-runner 9.19.1 → 9.21.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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b00232685620344397218ed5ccf143f583dea9cb7a94c454dcbc7f8d5ea00c3
|
4
|
+
data.tar.gz: 44d839ae61d043e63c01b4462359d6b8ccef54a73eac1cc679c1813099aeafab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0a8ac5cdcb8da3b8cfc80b54f8318989eef4df1f8b92dcff63884544bb25f6dde895aeeac0aa4c9091f385d029e7fd6a00ff6b04772bbdb71699686c6620eeda
|
7
|
+
data.tar.gz: 8e88e848cf6599fb944ce054a0fda6e65bc873fc3b6bf7b91c62f5a55f06332d00096c9ef060f69dccabe670475371d3d59e8d88036a870dd41fe157ee2621b0
|
data/lib/maze/aws_public_ip.rb
CHANGED
@@ -43,6 +43,8 @@ module Maze
|
|
43
43
|
port = 0
|
44
44
|
count = 0
|
45
45
|
max_attempts = 30
|
46
|
+
invalid_response_retries = 0
|
47
|
+
max_invalid_retries = 2
|
46
48
|
|
47
49
|
# Give up after 30 seconds
|
48
50
|
while port == 0 && count < max_attempts do
|
@@ -54,6 +56,17 @@ module Maze
|
|
54
56
|
json_string = result[0][0].strip
|
55
57
|
json_result = JSON.parse(json_string)
|
56
58
|
port = json_result['NetworkSettings']['Ports']["#{local_port}/tcp"][0]['HostPort']
|
59
|
+
rescue NoMethodError => error
|
60
|
+
if invalid_response_retries >= max_invalid_retries
|
61
|
+
Bugsnag.notify error
|
62
|
+
$logger.error "Public port response was invalid or incomplete: #{json_string}"
|
63
|
+
$logger.error "This has occurred more than maximum allowed #{max_invalid_retries}, exiting port process"
|
64
|
+
return 0
|
65
|
+
else
|
66
|
+
invalid_response_retries += 1
|
67
|
+
$logger.warn "Public port response was invalid or incomplete: #{json_string}"
|
68
|
+
$logger.warn "Attempting to acquire public port again, retry attempt: #{invalid_response_retries}"
|
69
|
+
end
|
57
70
|
rescue StandardError => error
|
58
71
|
Bugsnag.notify error
|
59
72
|
$logger.error "Unable to parse public port from: #{json_string}"
|
@@ -23,11 +23,16 @@ module Maze
|
|
23
23
|
Maze.driver.session_capabilities['appPackage']
|
24
24
|
when 'ios'
|
25
25
|
unless app_id = Maze.driver.session_capabilities['CFBundleIdentifier']
|
26
|
-
app_id = Maze.driver.session_capabilities['
|
26
|
+
app_id = Maze.driver.session_capabilities['bundleId']
|
27
27
|
end
|
28
28
|
app_id
|
29
29
|
end
|
30
30
|
|
31
|
+
if Maze.driver.app_id.nil?
|
32
|
+
$logger.error "Failed to determine app id."
|
33
|
+
$logger.debug "session_capabilities: #{Maze.driver.session_capabilities.inspect}"
|
34
|
+
end
|
35
|
+
|
31
36
|
# Ensure the device is unlocked
|
32
37
|
begin
|
33
38
|
Maze.driver.unlock
|
@@ -124,6 +124,20 @@ ios_12:
|
|
124
124
|
osVersion: "12"
|
125
125
|
realMobile: true
|
126
126
|
|
127
|
+
ios_13:
|
128
|
+
browserName: "iphone"
|
129
|
+
device: "iPhone 11"
|
130
|
+
os: "ios"
|
131
|
+
osVersion: "13"
|
132
|
+
realMobile: true
|
133
|
+
|
134
|
+
ios_14:
|
135
|
+
browserName: "iphone"
|
136
|
+
device: "iPhone 12"
|
137
|
+
os: "ios"
|
138
|
+
osVersion: "14"
|
139
|
+
realMobile: true
|
140
|
+
|
127
141
|
ios_15:
|
128
142
|
browserName: "iphone"
|
129
143
|
device: "iPhone 13"
|
@@ -144,6 +158,13 @@ ios_17:
|
|
144
158
|
osVersion: "17"
|
145
159
|
realMobile: true
|
146
160
|
|
161
|
+
ios_18:
|
162
|
+
browserName: "iphone"
|
163
|
+
device: "iPhone 13"
|
164
|
+
os: "ios"
|
165
|
+
osVersion: "18"
|
166
|
+
realMobile: true
|
167
|
+
|
147
168
|
android_4:
|
148
169
|
browserName: "Android Browser"
|
149
170
|
device: "Google Nexus 5"
|
@@ -25,8 +25,7 @@ module Maze
|
|
25
25
|
next unless event.test_case.eql?(test_case) && event.result.failed?
|
26
26
|
|
27
27
|
Bugsnag.notify(event.result.exception) do |bsg_event|
|
28
|
-
|
29
|
-
bsg_event.api_key = ENV['MAZE_SCENARIO_BUGSNAG_API_KEY']
|
28
|
+
bsg_event.api_key = ENV['MAZE_SCENARIO_BUGSNAG_API_KEY'] unless selenium_report?(event.result.exception)
|
30
29
|
|
31
30
|
unless @last_test_step.nil?
|
32
31
|
|
@@ -54,6 +53,10 @@ module Maze
|
|
54
53
|
|
55
54
|
super
|
56
55
|
end
|
56
|
+
|
57
|
+
def selenium_report?(exception)
|
58
|
+
exception.class.to_s.include?('Selenium')
|
59
|
+
end
|
57
60
|
end
|
58
61
|
end
|
59
62
|
end
|
data/lib/maze.rb
CHANGED
@@ -7,7 +7,8 @@ require_relative 'maze/timers'
|
|
7
7
|
# Glues the various parts of MazeRunner together that need to be accessed globally,
|
8
8
|
# providing an alternative to the proliferation of global variables or singletons.
|
9
9
|
module Maze
|
10
|
-
|
10
|
+
|
11
|
+
VERSION = '9.21.0'
|
11
12
|
|
12
13
|
class << self
|
13
14
|
attr_accessor :check, :driver, :internal_hooks, :mode, :start_time, :dynamic_retry, :public_address,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bugsnag-maze-runner
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.
|
4
|
+
version: 9.21.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Steve Kirkland
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-11-
|
11
|
+
date: 2024-11-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber
|