Skip to content

Commit c5415bf

Browse files
committed
Add test for multiplex
1 parent ace88db commit c5415bf

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

spec/graphql/tracing/detailed_trace_spec.rb

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,11 @@ class Query < GraphQL::Schema::Object
1010
query(Query)
1111
use GraphQL::Tracing::DetailedTrace, memory: true
1212
def self.detailed_trace?(query)
13-
query.context[:profile] != false
13+
if query.is_a?(GraphQL::Execution::Multiplex)
14+
query.queries.all? { |q| q.context[:profile] != false }
15+
else
16+
query.context[:profile] != false
17+
end
1418
end
1519
end
1620

@@ -48,4 +52,20 @@ def self.detailed_trace?(query)
4852
end
4953
assert_equal "Pass `redis: ...` to store traces in Redis for later review", err.message
5054
end
55+
56+
it "calls detailed_profile? on a Multiplex" do
57+
assert_equal 0, SamplerSchema.detailed_trace.traces.size
58+
59+
SamplerSchema.multiplex([
60+
{ query: "{ truthy }", context: { profile: false } },
61+
{ query: "{ truthy }", context: { profile: true } },
62+
])
63+
assert_equal 0, SamplerSchema.detailed_trace.traces.size
64+
65+
SamplerSchema.multiplex([
66+
{ query: "{ truthy }", context: { profile: true } },
67+
{ query: "{ truthy }", context: { profile: true } },
68+
])
69+
assert_equal 1, SamplerSchema.detailed_trace.traces.size
70+
end
5171
end

0 commit comments

Comments
 (0)