Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit1385213

Browse files
committed
Handle fetch mode deprecation of DBAL 2.11.
1 parent9f52228 commit1385213

File tree

5 files changed

+30
-19
lines changed

5 files changed

+30
-19
lines changed

‎src/Symfony/Component/Cache/Traits/PdoTrait.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ protected function doHave($id)
226226
$stmt->bindValue(':time',time(), \PDO::PARAM_INT);
227227
$stmt->execute();
228228

229-
return (bool)$stmt->fetchColumn();
229+
return (bool)(method_exists($stmt,'fetchOne') ?$stmt->fetchOne() :$stmt->fetchColumn());
230230
}
231231

232232
/**

‎src/Symfony/Component/Lock/Store/PdoStore.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ public function exists(Key $key)
203203
$stmt->bindValue(':token',$this->getUniqueToken($key));
204204
$stmt->execute();
205205

206-
return (bool)$stmt->fetchColumn();
206+
return (bool)(method_exists($stmt,'fetchOne') ?$stmt->fetchOne() :$stmt->fetchColumn());
207207
}
208208

209209
/**

‎src/Symfony/Component/Messenger/Tests/Transport/Doctrine/ConnectionTest.php‎

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
namespaceSymfony\Component\Messenger\Tests\Transport\Doctrine;
1313

1414
useDoctrine\DBAL\DBALException;
15-
useDoctrine\DBAL\Driver\Statement;
15+
useDoctrine\DBAL\Driver\ResultStatement;
16+
useDoctrine\DBAL\ForwardCompatibility\Driver\ResultStatementasForwardCompatibleResultStatement;
1617
useDoctrine\DBAL\Platforms\AbstractPlatform;
1718
useDoctrine\DBAL\Query\QueryBuilder;
1819
useDoctrine\DBAL\Schema\AbstractSchemaManager;
@@ -142,11 +143,16 @@ private function getQueryBuilderMock()
142143
return$queryBuilder;
143144
}
144145

145-
privatefunctiongetStatementMock($expectedResult):Statement
146+
privatefunctiongetStatementMock($expectedResult):ResultStatement
146147
{
147-
$stmt =$this->createMock(Statement::class);
148+
$mockedInterface =interface_exists(ForwardCompatibleResultStatement::class)
149+
? ForwardCompatibleResultStatement::class
150+
: ResultStatement::class;
151+
152+
$stmt =$this->createMock($mockedInterface);
153+
148154
$stmt->expects($this->once())
149-
->method('fetch')
155+
->method(method_exists($mockedInterface,'fetchAssociative') ?'fetchAssociative' :'fetch')
150156
->willReturn($expectedResult);
151157

152158
return$stmt;
@@ -306,9 +312,12 @@ public function testFindAll()
306312
'headers' =>json_encode(['type' => DummyMessage::class]),
307313
];
308314

309-
$stmt =$this->createMock(Statement::class);
315+
$mockedInterface =interface_exists(ForwardCompatibleResultStatement::class)
316+
? ForwardCompatibleResultStatement::class
317+
: ResultStatement::class;
318+
$stmt =$this->createMock($mockedInterface);
310319
$stmt->expects($this->once())
311-
->method('fetchAll')
320+
->method(method_exists($mockedInterface,'fetchAllAssociative') ?'fetchAllAssociative' :'fetchAll')
312321
->willReturn([$message1,$message2]);
313322

314323
$driverConnection

‎src/Symfony/Component/Messenger/Tests/Transport/Doctrine/DoctrineIntegrationTest.php‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,14 @@ public function testSendWithDelay()
6464
{
6565
$this->connection->send('{"message": "Hi i am delayed"}', ['type' => DummyMessage::class],600000);
6666

67-
$available_at =$this->driverConnection->createQueryBuilder()
67+
$stmt =$this->driverConnection->createQueryBuilder()
6868
->select('m.available_at')
6969
->from('messenger_messages','m')
7070
->where('m.body = :body')
7171
->setParameter(':body','{"message": "Hi i am delayed"}')
72-
->execute()
73-
->fetchColumn();
72+
->execute();
7473

75-
$available_at =new \DateTime($available_at);
74+
$available_at =new \DateTime(method_exists($stmt,'fetchOne') ?$stmt->fetchOne() :$stmt->fetchColumn());
7675

7776
$now =new \DateTime();
7877
$now->modify('+60 seconds');

‎src/Symfony/Component/Messenger/Transport/Doctrine/Connection.php‎

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -159,11 +159,12 @@ public function get(): ?array
159159
->setMaxResults(1);
160160

161161
// use SELECT ... FOR UPDATE to lock table
162-
$doctrineEnvelope =$this->executeQuery(
162+
$stmt =$this->executeQuery(
163163
$query->getSQL().''.$this->driverConnection->getDatabasePlatform()->getWriteLockSQL(),
164164
$query->getParameters(),
165165
$query->getParameterTypes()
166-
)->fetch();
166+
);
167+
$doctrineEnvelope =method_exists($stmt,'fetchAssociative') ?$stmt->fetchAssociative() :$stmt->fetch();
167168

168169
if (false ===$doctrineEnvelope) {
169170
$this->driverConnection->commit();
@@ -249,7 +250,9 @@ public function getMessageCount(): int
249250
->select('COUNT(m.id) as message_count')
250251
->setMaxResults(1);
251252

252-
return$this->executeQuery($queryBuilder->getSQL(),$queryBuilder->getParameters(),$queryBuilder->getParameterTypes())->fetchColumn();
253+
$stmt =$this->executeQuery($queryBuilder->getSQL(),$queryBuilder->getParameters(),$queryBuilder->getParameterTypes());
254+
255+
returnmethod_exists($stmt,'fetchOne') ?$stmt->fetchOne() :$stmt->fetchColumn();
253256
}
254257

255258
publicfunctionfindAll(int$limit =null):array
@@ -259,7 +262,8 @@ public function findAll(int $limit = null): array
259262
$queryBuilder->setMaxResults($limit);
260263
}
261264

262-
$data =$this->executeQuery($queryBuilder->getSQL(),$queryBuilder->getParameters(),$queryBuilder->getParameterTypes())->fetchAll();
265+
$stmt =$this->executeQuery($queryBuilder->getSQL(),$queryBuilder->getParameters(),$queryBuilder->getParameterTypes());
266+
$data =method_exists($stmt,'fetchAllAssociative') ?$stmt->fetchAllAssociative() :$stmt->fetchAll();
263267

264268
returnarray_map(function ($doctrineEnvelope) {
265269
return$this->decodeEnvelopeHeaders($doctrineEnvelope);
@@ -271,9 +275,8 @@ public function find($id): ?array
271275
$queryBuilder =$this->createQueryBuilder()
272276
->where('m.id = ?');
273277

274-
$data =$this->executeQuery($queryBuilder->getSQL(), [
275-
$id,
276-
])->fetch();
278+
$stmt =$this->executeQuery($queryBuilder->getSQL(), [$id]);
279+
$data =method_exists($stmt,'fetchAssociative') ?$stmt->fetchAssociative() :$stmt->fetch();
277280

278281
returnfalse ===$data ?null :$this->decodeEnvelopeHeaders($data);
279282
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp