bugsnag-maze-runner 7.25.0 → 7.26.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/features/steps/trace_steps.rb +20 -3
- 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: 2740400fc6ee5bd904dc3a82f334967f6a154eb5bd99a343f324ef68da800461
|
4
|
+
data.tar.gz: '0787ae4e578768564cf8e377b4e3626afd8b8b637a26c9077401f2093e81747b'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc58669b1cc0d59f7b1a3762e34ac489f174e997a2fa313dd50f7b18c6f863bdab8550090019a007f96c23e908cb9a2d9417f7142afb45cc8f9f52e79cd755d8
|
7
|
+
data.tar.gz: 0c8d117361004c964f759459e2f3433701277633b518bb7afca0a831bdc40cc86a3127eec04fbfcfab4136d05e700ab1231084dee0316508b25330cfa5f9c111
|
@@ -132,14 +132,15 @@ end
|
|
132
132
|
|
133
133
|
Then('a span string attribute {string} exists') do |attribute|
|
134
134
|
spans = spans_from_request_list(Maze::Server.list_for('traces'))
|
135
|
-
selected_attributes = spans.map { |span| span['attributes'].find { |a| a['key']
|
135
|
+
selected_attributes = spans.map { |span| span['attributes'].find { |a| a['key'].eql?(attribute) && a['value'].has_key?('stringValue') } }.compact
|
136
136
|
Maze.check.false(selected_attributes.empty?)
|
137
137
|
end
|
138
138
|
|
139
139
|
Then('a span string attribute {string} equals {string}') do |attribute, expected|
|
140
140
|
spans = spans_from_request_list(Maze::Server.list_for('traces'))
|
141
|
-
selected_attributes = spans.map { |span| span['attributes'].find { |a| a['key']
|
142
|
-
|
141
|
+
selected_attributes = spans.map { |span| span['attributes'].find { |a| a['key'].eql?(attribute) && a['value'].has_key?('stringValue') } }.compact
|
142
|
+
attribute_values = selected_attributes.map { |a| a['value']['stringValue'] }
|
143
|
+
Maze.check.includes attribute_values, expected
|
143
144
|
end
|
144
145
|
|
145
146
|
Then('a span field {string} equals {string}') do |key, expected|
|
@@ -186,6 +187,22 @@ Then('a span named {string} contains the attributes:') do |span_name, table|
|
|
186
187
|
end
|
187
188
|
end
|
188
189
|
|
190
|
+
Then('a span named {string} has a parent named {string}') do |child_name, parent_name|
|
191
|
+
spans = spans_from_request_list(Maze::Server.list_for('traces'))
|
192
|
+
child_spans = spans.find_all { |span| span['name'].eql?(child_name) }
|
193
|
+
raise Test::Unit::AssertionFailedError.new "No spans were found with the name #{child_name}" if child_spans.empty?
|
194
|
+
parent_spans = spans.find_all { |span| span['name'].eql?(parent_name) }
|
195
|
+
raise Test::Unit::AssertionFailedError.new "No spans were found with the name #{parent_name}" if parent_spans.empty?
|
196
|
+
|
197
|
+
expected_parent_ids = child_spans.map { |span| span['parentSpanId'] }
|
198
|
+
parent_ids = parent_spans.map { |span| span['spanId'] }
|
199
|
+
match = expected_parent_ids.any? { |expected_id| parent_ids.include?(expected_id) }
|
200
|
+
|
201
|
+
unless match
|
202
|
+
raise Test::Unit::AssertionFailedError.new "No child span named #{child_name} was found with a parent named #{parent_name}"
|
203
|
+
end
|
204
|
+
end
|
205
|
+
|
189
206
|
def spans_from_request_list list
|
190
207
|
return list.remaining
|
191
208
|
.flat_map { |req| req[:body]['resourceSpans'] }
|
data/lib/maze.rb
CHANGED
@@ -7,7 +7,7 @@ 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
|
-
VERSION = '7.
|
10
|
+
VERSION = '7.26.0'
|
11
11
|
|
12
12
|
class << self
|
13
13
|
attr_accessor :check, :driver, :internal_hooks, :mode, :start_time, :dynamic_retry, :public_address, :run_uuid
|
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: 7.
|
4
|
+
version: 7.26.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: 2023-04-
|
11
|
+
date: 2023-04-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cucumber
|