diff --git a/tests/phpunit/CRM/Logging/SchemaTest.php b/tests/phpunit/CRM/Logging/SchemaTest.php index ecfafeb53c21..173fb5db130a 100644 --- a/tests/phpunit/CRM/Logging/SchemaTest.php +++ b/tests/phpunit/CRM/Logging/SchemaTest.php @@ -6,7 +6,10 @@ */ class CRM_Logging_SchemaTest extends CiviUnitTestCase { + protected $databaseVersion; + public function setUp() { + $this->databaseVersion = CRM_Utils_SQL::getDatabaseVersion(); parent::setUp(); } @@ -18,6 +21,7 @@ public function setUp() { public function tearDown() { $schema = new CRM_Logging_Schema(); $schema->disableLogging(); + $this->databaseVersion = NULL; parent::tearDown(); $this->quickCleanup(['civicrm_contact'], TRUE); $schema->dropAllLogTables(); @@ -241,7 +245,9 @@ public function testColumnInfo() { $this->assertEquals('42', $ci['test_varchar']['LENGTH']); $this->assertEquals('int', $ci['test_integer']['DATA_TYPE']); - $this->assertEquals('8', $ci['test_integer']['LENGTH']); + if (version_compare($this->databaseVersion, '8.0.19', '<') || stripos($this->databaseVersion, 'mariadb') !== FALSE) { + $this->assertEquals('8', $ci['test_integer']['LENGTH']); + } $this->assertEquals('YES', $ci['test_integer']['IS_NULLABLE']); $this->assertEquals('decimal', $ci['test_decimal']['DATA_TYPE']); @@ -282,7 +288,9 @@ public function testLengthChange() { $schema->fixSchemaDifferences(); $ci = \Civi::$statics['CRM_Logging_Schema']['columnSpecs']; // length should increase - $this->assertEquals(6, $ci['log_civicrm_test_length_change']['test_integer']['LENGTH']); + if (version_compare($this->databaseVersion, '8.0.19', '<') || stripos($this->databaseVersion, 'mariadb') !== FALSE) { + $this->assertEquals(6, $ci['log_civicrm_test_length_change']['test_integer']['LENGTH']); + } $this->assertEquals('22,2', $ci['log_civicrm_test_length_change']['test_decimal']['LENGTH']); CRM_Core_DAO::executeQuery( "ALTER TABLE civicrm_test_length_change @@ -292,7 +300,9 @@ public function testLengthChange() { $schema->fixSchemaDifferences(); $ci = \Civi::$statics['CRM_Logging_Schema']['columnSpecs']; // length should not decrease - $this->assertEquals(6, $ci['log_civicrm_test_length_change']['test_integer']['LENGTH']); + if (version_compare($this->databaseVersion, '8.0.19', '<') || stripos($this->databaseVersion, 'mariadb') !== FALSE) { + $this->assertEquals(6, $ci['log_civicrm_test_length_change']['test_integer']['LENGTH']); + } $this->assertEquals('22,2', $ci['log_civicrm_test_length_change']['test_decimal']['LENGTH']); }