Commit bb6ea924 authored by catch's avatar catch

Issue #2875679 by mondrake, daffie: BasicSyntaxTest::testConcatFields fails with contrib driver

parent aae672cc
......@@ -29,15 +29,22 @@ public function testConcatLiterals() {
/**
* Tests string concatenation with field values.
*
* We use 'job' and 'age' fields from the {test} table. Using the 'name' field
* for concatenation causes issues with custom or contrib database drivers,
* since its type 'varchar_ascii' may lead to using field-level collations not
* compatible with the other fields.
*/
public function testConcatFields() {
$result = db_query('SELECT CONCAT(:a1, CONCAT(name, CONCAT(:a2, CONCAT(age, :a3)))) FROM {test} WHERE age = :age', [
':a1' => 'The age of ',
':a2' => ' is ',
':a3' => '.',
':age' => 25,
]);
$this->assertIdentical($result->fetchField(), 'The age of John is 25.', 'Field CONCAT works.');
$result = $this->connection->query(
'SELECT CONCAT(:a1, CONCAT(job, CONCAT(:a2, CONCAT(age, :a3)))) FROM {test} WHERE age = :age', [
':a1' => 'The age of ',
':a2' => ' is ',
':a3' => '.',
':age' => 25,
]
);
$this->assertSame('The age of Singer is 25.', $result->fetchField(), 'Field CONCAT works.');
}
/**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment