summaryrefslogtreecommitdiffstats
path: root/tests/lib/DB/QueryBuilder/QueryBuilderTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/DB/QueryBuilder/QueryBuilderTest.php')
-rw-r--r--tests/lib/DB/QueryBuilder/QueryBuilderTest.php20
1 files changed, 17 insertions, 3 deletions
diff --git a/tests/lib/DB/QueryBuilder/QueryBuilderTest.php b/tests/lib/DB/QueryBuilder/QueryBuilderTest.php
index 19278504707..fab080eec86 100644
--- a/tests/lib/DB/QueryBuilder/QueryBuilderTest.php
+++ b/tests/lib/DB/QueryBuilder/QueryBuilderTest.php
@@ -28,6 +28,7 @@ use OC\DB\QueryBuilder\Literal;
use OC\DB\QueryBuilder\Parameter;
use OC\DB\QueryBuilder\QueryBuilder;
use OC\SystemConfig;
+use OCP\DB\QueryBuilder\IQueryFunction;
use OCP\IDBConnection;
use OCP\ILogger;
@@ -506,7 +507,13 @@ class QueryBuilderTest extends \Test\TestCase {
}
public function dataFrom() {
+ $config = $this->createMock(SystemConfig::class);
+ $logger = $this->createMock(ILogger::class);
+ $qb = new QueryBuilder(\OC::$server->getDatabaseConnection(), $config, $logger);
return [
+ [$qb->createFunction('(' . $qb->select('*')->from('test')->getSQL() . ')'), 'q', null, null, [
+ ['table' => '(SELECT * FROM `*PREFIX*test`)', 'alias' => '`q`']
+ ], '(SELECT * FROM `*PREFIX*test`) `q`'],
['data', null, null, null, [['table' => '`*PREFIX*data`', 'alias' => null]], '`*PREFIX*data`'],
['data', 't', null, null, [['table' => '`*PREFIX*data`', 'alias' => '`t`']], '`*PREFIX*data` `t`'],
['data1', null, 'data2', null, [
@@ -523,9 +530,9 @@ class QueryBuilderTest extends \Test\TestCase {
/**
* @dataProvider dataFrom
*
- * @param string $table1Name
+ * @param string|IQueryFunction $table1Name
* @param string $table1Alias
- * @param string $table2Name
+ * @param string|IQueryFunction $table2Name
* @param string $table2Alias
* @param array $expectedQueryPart
* @param string $expectedQuery
@@ -1204,6 +1211,9 @@ class QueryBuilderTest extends \Test\TestCase {
}
public function dataGetTableName() {
+ $config = $this->createMock(SystemConfig::class);
+ $logger = $this->createMock(ILogger::class);
+ $qb = new QueryBuilder(\OC::$server->getDatabaseConnection(), $config, $logger);
return [
['*PREFIX*table', null, '`*PREFIX*table`'],
['*PREFIX*table', true, '`*PREFIX*table`'],
@@ -1212,13 +1222,17 @@ class QueryBuilderTest extends \Test\TestCase {
['table', null, '`*PREFIX*table`'],
['table', true, '`*PREFIX*table`'],
['table', false, '`table`'],
+
+ [$qb->createFunction('(' . $qb->select('*')->from('table')->getSQL() . ')'), null, '(SELECT * FROM `*PREFIX*table`)'],
+ [$qb->createFunction('(' . $qb->select('*')->from('table')->getSQL() . ')'), true, '(SELECT * FROM `*PREFIX*table`)'],
+ [$qb->createFunction('(' . $qb->select('*')->from('table')->getSQL() . ')'), false, '(SELECT * FROM `*PREFIX*table`)'],
];
}
/**
* @dataProvider dataGetTableName
*
- * @param string $tableName
+ * @param string|IQueryFunction $tableName
* @param bool $automatic
* @param string $expected
*/