Skip to content

Commit eb832b4

Browse files
committed
test(APQ): Simplify dynamic page cache test code
1 parent 53eb21e commit eb832b4

File tree

2 files changed

+17
-15
lines changed

2 files changed

+17
-15
lines changed

src/EventSubscriber/ApqSubscriber.php

+1
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ public function onBeforeOperation(OperationEvent $event): void {
4848
// Add cache context for dynamic page cache compatibility on all
4949
// operations that have the hash set.
5050
$event->getContext()->addCacheContexts(
51+
//['url.query_args']
5152
['url.query_args:variables', 'url.query_args:extensions']
5253
);
5354

tests/src/Kernel/Framework/AutomaticPersistedQueriesDynamicPageCacheTest.php

+16-15
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
use Symfony\Component\HttpFoundation\Request;
99

1010
/**
11-
* Tests the automatic persisted query plugin.
11+
* Tests the APQ plugin in combination with dynamic page cache.
1212
*
1313
* @group graphql
1414
*/
@@ -108,31 +108,32 @@ public function testPageCacheWithDifferentVariables(): void {
108108
$idQuery = 'query($id: String!) { node(id: $id) { id } }';
109109

110110
// 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);
111+
$extensions['persistedQuery']['sha256Hash'] = hash('sha256', $titleQuery);
112+
$variables = ['id' => '2'];
113+
$result = $this->query($titleQuery, $this->server, $variables, $extensions, FALSE, Request::METHOD_POST);
116114
$this->assertSame(200, $result->getStatusCode());
117115
$this->assertSame(['data' => ['node' => ['title' => 'Node 2']]], json_decode($result->getContent(), TRUE));
118116

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);
117+
$extensions['persistedQuery']['sha256Hash'] = hash('sha256', $idQuery);
118+
$variables = ['id' => '2'];
119+
$result = $this->query($idQuery, $this->server, $variables, $extensions, FALSE, Request::METHOD_POST);
124120
$this->assertSame(200, $result->getStatusCode());
125121
$this->assertSame(['data' => ['node' => ['id' => 2]]], json_decode($result->getContent(), TRUE));
126122

127123
// Execute apq call.
128-
$parameters['variables'] = '{"id": "1"}';
124+
/*$parameters['extensions']['persistedQuery']['sha256Hash'] = hash('sha256', $idQuery);
125+
$parameters['variables'] = ['id' => '1'];
129126
$request = Request::create($endpoint, 'GET', $parameters);
130-
$result = $this->container->get('http_kernel')->handle($request);
127+
$result = $this->container->get('http_kernel')->handle($request);*/
128+
129+
$variables = ['id' => '1'];
130+
$this->query($idQuery, $this->server, $variables, $extensions);
131+
131132
$this->assertSame(200, $result->getStatusCode());
132133
$this->assertSame(['data' => ['node' => ['id' => 1]]], json_decode($result->getContent(), TRUE));
133134

134135
// Execute apq call with different variables.
135-
$parameters['variables'] = '{"id": "2"}';
136+
/*$parameters['variables'] = '{"id": "2"}';
136137
$request = Request::create($endpoint, 'GET', $parameters);
137138
$result = $this->container->get('http_kernel')->handle($request);
138139
$this->assertSame(200, $result->getStatusCode());
@@ -144,7 +145,7 @@ public function testPageCacheWithDifferentVariables(): void {
144145
$request = Request::create($endpoint, 'GET', $parameters);
145146
$result = $this->container->get('http_kernel')->handle($request);
146147
$this->assertSame(200, $result->getStatusCode());
147-
$this->assertSame(['data' => ['node' => ['title' => 'Node 2']]], json_decode($result->getContent(), TRUE));
148+
$this->assertSame(['data' => ['node' => ['title' => 'Node 2']]], json_decode($result->getContent(), TRUE));*/
148149

149150
}
150151

0 commit comments

Comments
 (0)