Skip to content

Commit 414cb8e

Browse files
committed
Add regression test for custom trace class
1 parent 04104f1 commit 414cb8e

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

spec/graphql/tracing/trace_modes_spec.rb

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,4 +248,27 @@ def initialize(arg2:, **kwargs)
248248
assert ModeOptionsSchema.new_trace(mode: :extra)
249249
end
250250
end
251+
252+
module SomeTraceMod
253+
def execute_query(query)
254+
super
255+
end
256+
end
257+
258+
CustomTraceClass = Class.new(GraphQL::Tracing::Trace)
259+
260+
class BaseSchemaWithCustomTraceClass < GraphQL::Schema
261+
use(GraphQL::Batch)
262+
trace_class(CustomTraceClass)
263+
trace_with(SomeTraceMod)
264+
end
265+
266+
ChildSchema = Class.new(BaseSchemaWithCustomTraceClass)
267+
268+
describe "custom trace class supports trace module inheritance" do
269+
it "inherits parent trace modules" do
270+
assert_equal [GraphQL::Batch::SetupMultiplex::Trace, SomeTraceMod], ChildSchema.trace_modules_for(:default)
271+
assert ChildSchema.new_trace.instance_variable_defined?(:@executor_class)
272+
end
273+
end
251274
end

0 commit comments

Comments
 (0)