From 2d34ca4143f6ddeb2e0be8d6bca99469a5d08792 Mon Sep 17 00:00:00 2001
From: Joas Schilling <coding@schilljs.com>
Date: Mon, 11 Jan 2021 16:10:16 +0100
Subject: [PATCH] Only rollback when not MySQL

Signed-off-by: Joas Schilling <coding@schilljs.com>
---
 tests/lib/DB/MigratorTest.php | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/tests/lib/DB/MigratorTest.php b/tests/lib/DB/MigratorTest.php
index 539eb404bbf..6f3ebbb2b0c 100644
--- a/tests/lib/DB/MigratorTest.php
+++ b/tests/lib/DB/MigratorTest.php
@@ -10,7 +10,9 @@
 namespace Test\DB;
 
 use Doctrine\DBAL\Exception;
+use Doctrine\DBAL\Platforms\MySQLPlatform;
 use Doctrine\DBAL\Platforms\OraclePlatform;
+use Doctrine\DBAL\Platforms\SqlitePlatform;
 use Doctrine\DBAL\Schema\Schema;
 use Doctrine\DBAL\Schema\SchemaConfig;
 use OC\DB\SchemaWrapper;
@@ -122,7 +124,11 @@ class MigratorTest extends \Test\TestCase {
 	}
 
 	private function isSQLite() {
-		return $this->connection->getDriver() instanceof \Doctrine\DBAL\Driver\PDOSqlite\Driver;
+		return $this->connection->getDatabasePlatform() instanceof SqlitePlatform;
+	}
+
+	private function isMySQL() {
+		return $this->connection->getDatabasePlatform() instanceof MySQLPlatform;
 	}
 
 
@@ -143,7 +149,9 @@ class MigratorTest extends \Test\TestCase {
 		try {
 			$migrator->migrate($endSchema);
 		} catch (Exception\UniqueConstraintViolationException $e) {
-			$this->connection->rollBack();
+			if (!$this->isMySQL()) {
+				$this->connection->rollBack();
+			}
 			throw $e;
 		}
 	}
-- 
GitLab