diff options
author | Joas Schilling <coding@schilljs.com> | 2020-11-05 10:50:53 +0100 |
---|---|---|
committer | Joas Schilling <coding@schilljs.com> | 2020-11-09 12:28:17 +0100 |
commit | 8027dcbc6f6b1653f5ebcf04b1862ac1e1f51d32 (patch) | |
tree | 1bf182f477bfbead7b75ae14a8cd0fce5bb38ada /apps/files_trashbin | |
parent | 72545ffd07a07f142c9c18b3e4afc9ae1b5c8da2 (diff) | |
download | nextcloud-server-8027dcbc6f6b1653f5ebcf04b1862ac1e1f51d32.tar.gz nextcloud-server-8027dcbc6f6b1653f5ebcf04b1862ac1e1f51d32.zip |
Don't leave cursors open when tests fail
Signed-off-by: Joas Schilling <coding@schilljs.com>
Diffstat (limited to 'apps/files_trashbin')
-rw-r--r-- | apps/files_trashbin/lib/Trashbin.php | 6 | ||||
-rw-r--r-- | apps/files_trashbin/tests/Command/CleanUpTest.php | 10 |
2 files changed, 12 insertions, 4 deletions
diff --git a/apps/files_trashbin/lib/Trashbin.php b/apps/files_trashbin/lib/Trashbin.php index 2ad67e5559a..91f3cec21ee 100644 --- a/apps/files_trashbin/lib/Trashbin.php +++ b/apps/files_trashbin/lib/Trashbin.php @@ -1002,10 +1002,14 @@ class Trashbin { ->andWhere($query->expr()->eq('parent', $query->createNamedParameter($parentId))) ->andWhere($query->expr()->iLike('name', $query->createNamedParameter($pattern))); + $result = $query->execute(); + $entries = $result->fetchAll(); + $result->closeCursor(); + /** @var CacheEntry[] $matches */ $matches = array_map(function (array $data) { return Cache::cacheEntryFromData($data, \OC::$server->getMimeTypeLoader()); - }, $query->execute()->fetchAll()); + }, $entries); foreach ($matches as $ma) { if ($timestamp) { diff --git a/apps/files_trashbin/tests/Command/CleanUpTest.php b/apps/files_trashbin/tests/Command/CleanUpTest.php index d7a654e519d..329089bcafa 100644 --- a/apps/files_trashbin/tests/Command/CleanUpTest.php +++ b/apps/files_trashbin/tests/Command/CleanUpTest.php @@ -124,9 +124,13 @@ class CleanUpTest extends TestCase { // if the delete operation was execute only files from user1 // should be left. $query = $this->dbConnection->getQueryBuilder(); - $result = $query->select('user') - ->from($this->trashTable) - ->execute()->fetchAll(); + $query->select('user') + ->from($this->trashTable); + + $qResult = $query->execute(); + $result = $qResult->fetchAll(); + $qResult->closeCursor(); + $this->assertSame(5, count($result)); foreach ($result as $r) { $this->assertSame('user1', $r['user']); |