From 61c767128c49b8aa8bd681e8ac7edaa235812c5a Mon Sep 17 00:00:00 2001
From: Joas Schilling <coding@schilljs.com>
Date: Wed, 4 Nov 2020 16:40:31 +0100
Subject: [PATCH] Skip the insertIfNotExists() tests on Oracle because it
 doesn't work with clob

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

diff --git a/tests/lib/DB/ConnectionTest.php b/tests/lib/DB/ConnectionTest.php
index 5a2823ef28e..fa4d5fe005c 100644
--- a/tests/lib/DB/ConnectionTest.php
+++ b/tests/lib/DB/ConnectionTest.php
@@ -203,6 +203,10 @@ class ConnectionTest extends \Test\TestCase {
 	}
 
 	public function testInsertIfNotExist() {
+		if (\OC::$server->getConfig()->getSystemValue('dbtype', 'sqlite') === 'oci') {
+			self::markTestSkipped('Insert if not exist does not work with clob on oracle');
+		}
+
 		$this->makeTestTable();
 		$categoryEntries = [
 			['user' => 'test', 'category' => 'Family',    'expectedResult' => 1],
@@ -232,6 +236,10 @@ class ConnectionTest extends \Test\TestCase {
 	}
 
 	public function testInsertIfNotExistNull() {
+		if (\OC::$server->getConfig()->getSystemValue('dbtype', 'sqlite') === 'oci') {
+			self::markTestSkipped('Insert if not exist does not work with clob on oracle');
+		}
+
 		$this->makeTestTable();
 		$categoryEntries = [
 			['addressbookid' => 123, 'fullname' => null, 'expectedResult' => 1],
@@ -255,6 +263,10 @@ class ConnectionTest extends \Test\TestCase {
 	}
 
 	public function testInsertIfNotExistDonTOverwrite() {
+		if (\OC::$server->getConfig()->getSystemValue('dbtype', 'sqlite') === 'oci') {
+			self::markTestSkipped('Insert if not exist does not work with clob on oracle');
+		}
+
 		$this->makeTestTable();
 		$fullName = 'fullname test';
 		$uri = 'uri_1';
@@ -291,6 +303,10 @@ class ConnectionTest extends \Test\TestCase {
 	}
 
 	public function testInsertIfNotExistsViolating() {
+		if (\OC::$server->getConfig()->getSystemValue('dbtype', 'sqlite') === 'oci') {
+			self::markTestSkipped('Insert if not exist does not work with clob on oracle');
+		}
+
 		$this->makeTestTable();
 		$result = $this->connection->insertIfNotExist('*PREFIX*table',
 			[
@@ -321,6 +337,10 @@ class ConnectionTest extends \Test\TestCase {
 	 * @param array $compareKeys
 	 */
 	public function testInsertIfNotExistsViolatingUnique($compareKeys) {
+		if (\OC::$server->getConfig()->getSystemValue('dbtype', 'sqlite') === 'oci') {
+			self::markTestSkipped('Insert if not exist does not work with clob on oracle');
+		}
+
 		$this->makeTestTable();
 		$result = $this->connection->insertIfNotExist('*PREFIX*table',
 			[
-- 
GitLab