Browse Source
Rollback failed transactions in TestCase.php to not break followup tests
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
pull/24948/head
Christoph Wurst
5 years ago
No known key found for this signature in database
GPG Key ID: CC42AC2A7F0E56D8
1 changed files with
6 additions and
1 deletions
-
tests/lib/TestCase.php
|
|
@ -261,7 +261,12 @@ abstract class TestCase extends \PHPUnit\Framework\TestCase { |
|
|
|
} |
|
|
|
$dataDir = \OC::$server->getConfig()->getSystemValue('datadirectory', \OC::$SERVERROOT . '/data-autotest'); |
|
|
|
if (self::$wasDatabaseAllowed && \OC::$server->getDatabaseConnection()) { |
|
|
|
$queryBuilder = \OC::$server->getDatabaseConnection()->getQueryBuilder(); |
|
|
|
$db = \OC::$server->getDatabaseConnection(); |
|
|
|
if ($db->inTransaction()) { |
|
|
|
$db->rollBack(); |
|
|
|
throw new \Exception('There was a transaction still in progress and needed to be rolled back. Please fix this in your test.'); |
|
|
|
} |
|
|
|
$queryBuilder = $db->getQueryBuilder(); |
|
|
|
|
|
|
|
self::tearDownAfterClassCleanShares($queryBuilder); |
|
|
|
self::tearDownAfterClassCleanStorages($queryBuilder); |
|
|
|