8
8
use Symfony \Component \HttpFoundation \Request ;
9
9
10
10
/**
11
- * Tests the automatic persisted query plugin .
11
+ * Tests the APQ plugin in combination with dynamic page cache .
12
12
*
13
13
* @group graphql
14
14
*/
@@ -83,7 +83,6 @@ public function testPageCacheWithDifferentVariables(): void {
83
83
$ this ->server ->removeAllPersistedQueryInstances ();
84
84
$ this ->server ->addPersistedQueryInstance ($ this ->pluginApq );
85
85
$ this ->server ->save ();
86
- $ endpoint = $ this ->server ->get ('endpoint ' );
87
86
88
87
NodeType::create ([
89
88
'type ' => 'test ' ,
@@ -108,44 +107,36 @@ public function testPageCacheWithDifferentVariables(): void {
108
107
$ idQuery = 'query($id: String!) { node(id: $id) { id } } ' ;
109
108
110
109
// Post query to endpoint to register the query hashes.
111
- $ parameters ['extensions ' ]['persistedQuery ' ]['sha256Hash ' ] = hash ('sha256 ' , $ titleQuery );
112
- $ parameters ['variables ' ] = '{"id": "2"} ' ;
113
- $ content = json_encode (['query ' => $ titleQuery ] + $ parameters );
114
- $ request = Request::create ($ endpoint , 'POST ' , [], [], [], ['CONTENT_TYPE ' => 'application/json ' ], $ content );
115
- $ result = $ this ->container ->get ('http_kernel ' )->handle ($ request );
110
+ $ extensions ['persistedQuery ' ]['sha256Hash ' ] = hash ('sha256 ' , $ titleQuery );
111
+ $ variables = ['id ' => '2 ' ];
112
+ $ result = $ this ->query ($ titleQuery , $ this ->server , $ variables , $ extensions , FALSE , Request::METHOD_POST );
116
113
$ this ->assertSame (200 , $ result ->getStatusCode ());
117
114
$ this ->assertSame (['data ' => ['node ' => ['title ' => 'Node 2 ' ]]], json_decode ($ result ->getContent (), TRUE ));
118
115
119
- $ parameters ['extensions ' ]['persistedQuery ' ]['sha256Hash ' ] = hash ('sha256 ' , $ idQuery );
120
- $ parameters ['variables ' ] = '{"id": "2"} ' ;
121
- $ content = json_encode (['query ' => $ idQuery ] + $ parameters );
122
- $ request = Request::create ($ endpoint , 'POST ' , [], [], [], ['CONTENT_TYPE ' => 'application/json ' ], $ content );
123
- $ result = $ this ->container ->get ('http_kernel ' )->handle ($ request );
116
+ $ extensions ['persistedQuery ' ]['sha256Hash ' ] = hash ('sha256 ' , $ idQuery );
117
+ $ variables = ['id ' => '2 ' ];
118
+ $ result = $ this ->query ($ idQuery , $ this ->server , $ variables , $ extensions , FALSE , Request::METHOD_POST );
124
119
$ this ->assertSame (200 , $ result ->getStatusCode ());
125
120
$ this ->assertSame (['data ' => ['node ' => ['id ' => 2 ]]], json_decode ($ result ->getContent (), TRUE ));
126
121
127
122
// Execute apq call.
128
- $ parameters ['variables ' ] = '{"id": "1"} ' ;
129
- $ request = Request::create ($ endpoint , 'GET ' , $ parameters );
130
- $ result = $ this ->container ->get ('http_kernel ' )->handle ($ request );
123
+ $ variables = ['id ' => '1 ' ];
124
+ $ result = $ this ->query (NULL , $ this ->server , $ variables , $ extensions );
131
125
$ this ->assertSame (200 , $ result ->getStatusCode ());
132
126
$ this ->assertSame (['data ' => ['node ' => ['id ' => 1 ]]], json_decode ($ result ->getContent (), TRUE ));
133
127
134
128
// Execute apq call with different variables.
135
- $ parameters ['variables ' ] = '{"id": "2"} ' ;
136
- $ request = Request::create ($ endpoint , 'GET ' , $ parameters );
137
- $ result = $ this ->container ->get ('http_kernel ' )->handle ($ request );
129
+ $ variables = ['id ' => '2 ' ];
130
+ $ result = $ this ->query (NULL , $ this ->server , $ variables , $ extensions );
138
131
$ this ->assertSame (200 , $ result ->getStatusCode ());
139
132
$ this ->assertSame (['data ' => ['node ' => ['id ' => 2 ]]], json_decode ($ result ->getContent (), TRUE ));
140
133
141
134
// Execute apq call with same parameters, but different query.
142
- $ parameters ['extensions ' ]['persistedQuery ' ]['sha256Hash ' ] = hash ('sha256 ' , $ titleQuery );
143
- $ parameters ['variables ' ] = '{"id": "2"} ' ;
144
- $ request = Request::create ($ endpoint , 'GET ' , $ parameters );
145
- $ result = $ this ->container ->get ('http_kernel ' )->handle ($ request );
135
+ $ extensions ['persistedQuery ' ]['sha256Hash ' ] = hash ('sha256 ' , $ titleQuery );
136
+ $ variables = ['id ' => '2 ' ];
137
+ $ result = $ this ->query (NULL , $ this ->server , $ variables , $ extensions );
146
138
$ this ->assertSame (200 , $ result ->getStatusCode ());
147
139
$ this ->assertSame (['data ' => ['node ' => ['title ' => 'Node 2 ' ]]], json_decode ($ result ->getContent (), TRUE ));
148
-
149
140
}
150
141
151
142
}
0 commit comments