55import org .junit .jupiter .api .BeforeAll ;
66import org .junit .jupiter .api .Test ;
77
8+ import java .util .Map ;
9+
10+ import static org .assertj .core .api .Assertions .assertThat ;
11+
812public class AgentTest {
913
1014 @ BeforeAll
@@ -19,23 +23,39 @@ static void cleanup() {
1923 @ Test
2024 void test () {
2125 ExecutionTrackingResult executionTrackingResult = TestQuery .executeQuery ();
22- // assertThat(executionTrackingResult.dataFetcherCount()).isEqualTo(5);
23- // assertThat(executionTrackingResult.getTime("/issues")).isGreaterThan(100);
24- // assertThat(executionTrackingResult.getDfResultTypes("/issues"))
25- // .isEqualTo(ExecutionTrackingResult.DFResultType.DONE_OK);
26+ assertThat (executionTrackingResult .dataFetcherCount ()).isEqualTo (5 );
27+ assertThat (executionTrackingResult .getTime ("/issues" )).isGreaterThan (100 );
28+ assertThat (executionTrackingResult .getDfResultTypes ("/issues" ))
29+ .isEqualTo (ExecutionTrackingResult .DFResultType .DONE_OK );
30+
31+ verifyAgentDataIsEmpty ();
32+
2633 }
2734
2835 @ Test
2936 void testBatchLoader () {
3037 ExecutionTrackingResult executionTrackingResult = TestQuery .executeBatchedQuery ();
31- TestQuery .executeBatchedQuery ();
32- TestQuery .executeBatchedQuery ();
33- TestQuery .executeBatchedQuery ();
34- // assertThat(executionTrackingResult.dataFetcherCount()).isEqualTo(9);
35- // assertThat(executionTrackingResult.getTime("/issues")).isGreaterThan(100);
36- // assertThat(executionTrackingResult.getDfResultTypes("/issues[0]/author"))
37- // .isEqualTo(ExecutionTrackingResult.DFResultType.PENDING);
38- // assertThat(executionTrackingResult.getDfResultTypes("/issues[1]/author"))
39- // .isEqualTo(ExecutionTrackingResult.DFResultType.PENDING);
38+ assertThat (executionTrackingResult .dataFetcherCount ()).isEqualTo (9 );
39+ assertThat (executionTrackingResult .getTime ("/issues" )).isGreaterThan (100 );
40+ assertThat (executionTrackingResult .getDfResultTypes ("/issues[0]/author" ))
41+ .isEqualTo (ExecutionTrackingResult .DFResultType .PENDING );
42+ assertThat (executionTrackingResult .getDfResultTypes ("/issues[1]/author" ))
43+ .isEqualTo (ExecutionTrackingResult .DFResultType .PENDING );
44+
45+ verifyAgentDataIsEmpty ();
46+ }
47+
48+ private void verifyAgentDataIsEmpty () {
49+ try {
50+ Class <?> agent = Class .forName ("graphql.agent.GraphQLJavaAgent" );
51+ Map executionIdToData = (Map ) agent .getField ("executionIdToData" ).get (null );
52+ Map dataLoaderToExecutionId = (Map ) agent .getField ("dataLoaderToExecutionId" ).get (null );
53+ assertThat (executionIdToData ).isEmpty ();
54+ assertThat (dataLoaderToExecutionId ).isEmpty ();
55+
56+ } catch (Exception e ) {
57+ throw new RuntimeException (e );
58+ }
59+
4060 }
4161}
0 commit comments