SqlModeTest.php in Drupal 9
File
core/tests/Drupal/KernelTests/Core/Database/SqlModeTest.php
View source
<?php
namespace Drupal\KernelTests\Core\Database;
class SqlModeTest extends DatabaseTestBase {
protected function setUp() : void {
parent::setUp();
if ($this->connection
->databaseType() !== 'mysql') {
$this
->markTestSkipped("Skipping test since sql_mode is a MySQL-only feature.");
}
}
public function testQuotingIdentifiers() {
$query = $this->connection
->query('SELECT [update] FROM {select}');
$this
->assertEquals('Update value 1', $query
->fetchObject()->update);
$this
->assertStringContainsString('SELECT `update` FROM `', $query
->getQueryString());
}
protected function getDatabaseConnectionInfo() {
$info = parent::getDatabaseConnectionInfo();
if ($info['default']['driver'] === 'mysql') {
$info['default']['init_commands']['sql_mode'] = "SET sql_mode = ''";
}
return $info;
}
}
Classes
Name |
Description |
SqlModeTest |
Tests compatibility of the MySQL driver with various sql_mode options. |