diff --git a/graphql-java-support/src/main/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentation.java b/graphql-java-support/src/main/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentation.java index ad2017fb..91ae076f 100644 --- a/graphql-java-support/src/main/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentation.java +++ b/graphql-java-support/src/main/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentation.java @@ -499,7 +499,7 @@ public boolean shouldTrace(ExecutionInput executionInput) { return FEDERATED_TRACING_HEADER_VALUE.equals( executionInput.getGraphQLContext().get(FEDERATED_TRACING_HEADER_NAME)); } - return true; + return false; } } } diff --git a/graphql-java-support/src/test/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentationTest.java b/graphql-java-support/src/test/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentationTest.java index 8be17619..5d17ba8b 100644 --- a/graphql-java-support/src/test/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentationTest.java +++ b/graphql-java-support/src/test/java/com/apollographql/federation/graphqljava/tracing/FederatedTracingInstrumentationTest.java @@ -85,7 +85,7 @@ void setupSchema() { void testTracing() throws InvalidProtocolBufferException { Map result = graphql - .execute("{ widgets { foo, baz: bar }, listOfLists { foo }, listOfScalars }") + .execute(createExecutionInput("{ widgets { foo, baz: bar }, listOfLists { foo }, listOfScalars }")) .toSpecification(); Object extensions = result.get("extensions"); @@ -173,7 +173,7 @@ void testTracing() throws InvalidProtocolBufferException { @Test void testTracingParseErrors() throws InvalidProtocolBufferException { - Map result = graphql.execute("{ widgets { foo }").toSpecification(); + Map result = graphql.execute(createExecutionInput("{ widgets { foo }")).toSpecification(); Object extensions = result.get("extensions"); assertTrue(extensions instanceof Map); @@ -192,7 +192,7 @@ void testTracingParseErrors() throws InvalidProtocolBufferException { @Test void testTracingValidationErrors() throws InvalidProtocolBufferException { - Map result = graphql.execute("{ widgets { notARealThing } }").toSpecification(); + Map result = graphql.execute(createExecutionInput("{ widgets { notARealThing } }")).toSpecification(); Object extensions = result.get("extensions"); assertTrue(extensions instanceof Map); @@ -263,11 +263,10 @@ void testBringYourOwnContextSignalsToTracePredicate() { void testTracingWithGraphQLContextMap() { ExecutionInput input = ExecutionInput.newExecutionInput("{widgets {foo}}").build(); - // Because the special header isn't there, we fallback to the default behavior Map result = graphql.execute(input).toSpecification(); Object extensions = result.get("extensions"); - assertTrue(extensions instanceof Map); - assertTrue(((Map) extensions).containsKey("ftv1")); + // Because the special header isn't there, we fallback to the default behavior of not generating ftv1 + assertNull(extensions); // Try again with the header having the wrong value. Map context = new HashMap<>(); @@ -285,4 +284,10 @@ void testTracingWithGraphQLContextMap() { assertTrue(extensions instanceof Map); assertTrue(((Map) extensions).containsKey("ftv1")); } + + private static ExecutionInput createExecutionInput(String query) { + return ExecutionInput.newExecutionInput(query) + .graphQLContext(Map.of(FEDERATED_TRACING_HEADER_NAME, FEDERATED_TRACING_HEADER_VALUE)) + .build(); + } }