diff options
Diffstat (limited to 'tests/lib')
-rw-r--r-- | tests/lib/Comments/ManagerTest.php | 50 | ||||
-rw-r--r-- | tests/lib/DB/QueryBuilder/FunctionBuilderTest.php | 8 | ||||
-rw-r--r-- | tests/lib/DB/QueryBuilder/QueryBuilderTest.php | 50 | ||||
-rw-r--r-- | tests/lib/Files/Cache/QuerySearchHelperTest.php | 41 | ||||
-rw-r--r-- | tests/lib/Files/Config/UserMountCacheTest.php | 2 | ||||
-rw-r--r-- | tests/lib/Repair/NC12/UpdateLanguageCodesTest.php | 3 | ||||
-rw-r--r-- | tests/lib/Share/ShareTest.php | 8 |
7 files changed, 90 insertions, 72 deletions
diff --git a/tests/lib/Comments/ManagerTest.php b/tests/lib/Comments/ManagerTest.php index 24c634be137..b04f3bd567e 100644 --- a/tests/lib/Comments/ManagerTest.php +++ b/tests/lib/Comments/ManagerTest.php @@ -307,29 +307,9 @@ class ManagerTest extends TestCase { } public function testGetNumberOfUnreadCommentsForFolder() { - // 2 comment for 1111 with 1 before read marker - // 2 comments for 1112 with no read marker - // 1 comment for 1113 before read marker - // 1 comment for 1114 with no read marker - $this->addDatabaseEntry(0, 0, null, null, '1112'); - for ($i = 1; $i < 5; $i++) { - $this->addDatabaseEntry(0, 0, null, null, '111' . $i); - } - $this->addDatabaseEntry(0, 0, (new \DateTime())->modify('-2 days'), null, '1111'); - $user = $this->createMock(IUser::class); - $user->expects($this->any()) - ->method('getUID') - ->will($this->returnValue('comment_test')); - - $manager = $this->getManager(); - - $manager->setReadMark('files', '1111', (new \DateTime())->modify('-1 days'), $user); - $manager->setReadMark('files', '1113', (new \DateTime()), $user); - $query = $this->connection->getQueryBuilder(); $query->insert('filecache') ->values([ - 'fileid' => $query->createParameter('fileid'), 'parent' => $query->createNamedParameter(1000), 'size' => $query->createNamedParameter(10), 'mtime' => $query->createNamedParameter(10), @@ -338,17 +318,37 @@ class ManagerTest extends TestCase { 'path_hash' => $query->createParameter('path'), ]); - for ($i = 1111; $i < 1115; $i++) { + $fileIds = []; + for ($i = 0; $i < 4; $i++) { $query->setParameter('path', 'path_' . $i); - $query->setParameter('fileid', $i); $query->execute(); + $fileIds[] = $query->getLastInsertId(); } + // 2 comment for 1111 with 1 before read marker + // 2 comments for 1112 with no read marker + // 1 comment for 1113 before read marker + // 1 comment for 1114 with no read marker + $this->addDatabaseEntry(0, 0, null, null, $fileIds[1]); + for ($i = 0; $i < 4; $i++) { + $this->addDatabaseEntry(0, 0, null, null, $fileIds[$i]); + } + $this->addDatabaseEntry(0, 0, (new \DateTime())->modify('-2 days'), null, $fileIds[0]); + $user = $this->createMock(IUser::class); + $user->expects($this->any()) + ->method('getUID') + ->will($this->returnValue('comment_test')); + + $manager = $this->getManager(); + + $manager->setReadMark('files', (string) $fileIds[0], (new \DateTime())->modify('-1 days'), $user); + $manager->setReadMark('files', (string) $fileIds[2], (new \DateTime()), $user); + $amount = $manager->getNumberOfUnreadCommentsForFolder(1000, $user); $this->assertEquals([ - '1111' => 1, - '1112' => 2, - '1114' => 1, + $fileIds[0] => 1, + $fileIds[1] => 2, + $fileIds[3] => 1, ], $amount); } diff --git a/tests/lib/DB/QueryBuilder/FunctionBuilderTest.php b/tests/lib/DB/QueryBuilder/FunctionBuilderTest.php index c270e105fc1..e89da0fbc92 100644 --- a/tests/lib/DB/QueryBuilder/FunctionBuilderTest.php +++ b/tests/lib/DB/QueryBuilder/FunctionBuilderTest.php @@ -44,6 +44,8 @@ class FunctionBuilderTest extends TestCase { $query = $this->connection->getQueryBuilder(); $query->select($query->func()->concat($query->createNamedParameter('foo'), new Literal("'bar'"))); + $query->from('appconfig') + ->setMaxResults(1); $this->assertEquals('foobar', $query->execute()->fetchColumn()); } @@ -52,6 +54,8 @@ class FunctionBuilderTest extends TestCase { $query = $this->connection->getQueryBuilder(); $query->select($query->func()->md5($query->createNamedParameter('foobar'))); + $query->from('appconfig') + ->setMaxResults(1); $this->assertEquals(md5('foobar'), $query->execute()->fetchColumn()); } @@ -60,6 +64,8 @@ class FunctionBuilderTest extends TestCase { $query = $this->connection->getQueryBuilder(); $query->select($query->func()->substring($query->createNamedParameter('foobar'), new Literal(2), $query->createNamedParameter(2))); + $query->from('appconfig') + ->setMaxResults(1); $this->assertEquals('oo', $query->execute()->fetchColumn()); } @@ -68,6 +74,8 @@ class FunctionBuilderTest extends TestCase { $query = $this->connection->getQueryBuilder(); $query->select($query->func()->substring($query->createNamedParameter('foobar'), new Literal(2))); + $query->from('appconfig') + ->setMaxResults(1); $this->assertEquals('oobar', $query->execute()->fetchColumn()); } diff --git a/tests/lib/DB/QueryBuilder/QueryBuilderTest.php b/tests/lib/DB/QueryBuilder/QueryBuilderTest.php index 150c772b26c..e264fde6ec7 100644 --- a/tests/lib/DB/QueryBuilder/QueryBuilderTest.php +++ b/tests/lib/DB/QueryBuilder/QueryBuilderTest.php @@ -472,15 +472,15 @@ class QueryBuilderTest extends \Test\TestCase { public function dataFrom() { return [ ['data', null, null, null, [['table' => '`*PREFIX*data`', 'alias' => null]], '`*PREFIX*data`'], - ['data', 't', null, null, [['table' => '`*PREFIX*data`', 'alias' => 't']], '`*PREFIX*data` t'], + ['data', 't', null, null, [['table' => '`*PREFIX*data`', 'alias' => '`t`']], '`*PREFIX*data` `t`'], ['data1', null, 'data2', null, [ ['table' => '`*PREFIX*data1`', 'alias' => null], ['table' => '`*PREFIX*data2`', 'alias' => null] ], '`*PREFIX*data1`, `*PREFIX*data2`'], ['data', 't1', 'data', 't2', [ - ['table' => '`*PREFIX*data`', 'alias' => 't1'], - ['table' => '`*PREFIX*data`', 'alias' => 't2'] - ], '`*PREFIX*data` t1, `*PREFIX*data` t2'], + ['table' => '`*PREFIX*data`', 'alias' => '`t1`'], + ['table' => '`*PREFIX*data`', 'alias' => '`t2`'] + ], '`*PREFIX*data` `t1`, `*PREFIX*data` `t2`'], ]; } @@ -515,18 +515,18 @@ class QueryBuilderTest extends \Test\TestCase { return [ [ 'd1', 'data2', null, null, - ['d1' => [['joinType' => 'inner', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => null, 'joinCondition' => null]]], - '`*PREFIX*data1` d1 INNER JOIN `*PREFIX*data2` ON ' + ['`d1`' => [['joinType' => 'inner', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => null, 'joinCondition' => null]]], + '`*PREFIX*data1` `d1` INNER JOIN `*PREFIX*data2` ON ' ], [ 'd1', 'data2', 'd2', null, - ['d1' => [['joinType' => 'inner', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => 'd2', 'joinCondition' => null]]], - '`*PREFIX*data1` d1 INNER JOIN `*PREFIX*data2` d2 ON ' + ['`d1`' => [['joinType' => 'inner', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => '`d2`', 'joinCondition' => null]]], + '`*PREFIX*data1` `d1` INNER JOIN `*PREFIX*data2` `d2` ON ' ], [ - 'd1', 'data2', 'd2', 'd1.`field1` = d2.`field2`', - ['d1' => [['joinType' => 'inner', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => 'd2', 'joinCondition' => 'd1.`field1` = d2.`field2`']]], - '`*PREFIX*data1` d1 INNER JOIN `*PREFIX*data2` d2 ON d1.`field1` = d2.`field2`' + 'd1', 'data2', 'd2', '`d1`.`field1` = `d2`.`field2`', + ['`d1`' => [['joinType' => 'inner', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => '`d2`', 'joinCondition' => '`d1`.`field1` = `d2`.`field2`']]], + '`*PREFIX*data1` `d1` INNER JOIN `*PREFIX*data2` `d2` ON `d1`.`field1` = `d2`.`field2`' ], ]; @@ -596,18 +596,18 @@ class QueryBuilderTest extends \Test\TestCase { return [ [ 'd1', 'data2', null, null, - ['d1' => [['joinType' => 'left', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => null, 'joinCondition' => null]]], - '`*PREFIX*data1` d1 LEFT JOIN `*PREFIX*data2` ON ' + ['`d1`' => [['joinType' => 'left', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => null, 'joinCondition' => null]]], + '`*PREFIX*data1` `d1` LEFT JOIN `*PREFIX*data2` ON ' ], [ 'd1', 'data2', 'd2', null, - ['d1' => [['joinType' => 'left', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => 'd2', 'joinCondition' => null]]], - '`*PREFIX*data1` d1 LEFT JOIN `*PREFIX*data2` d2 ON ' + ['`d1`' => [['joinType' => 'left', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => '`d2`', 'joinCondition' => null]]], + '`*PREFIX*data1` `d1` LEFT JOIN `*PREFIX*data2` `d2` ON ' ], [ - 'd1', 'data2', 'd2', 'd1.`field1` = d2.`field2`', - ['d1' => [['joinType' => 'left', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => 'd2', 'joinCondition' => 'd1.`field1` = d2.`field2`']]], - '`*PREFIX*data1` d1 LEFT JOIN `*PREFIX*data2` d2 ON d1.`field1` = d2.`field2`' + 'd1', 'data2', 'd2', '`d1`.`field1` = `d2`.`field2`', + ['`d1`' => [['joinType' => 'left', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => '`d2`', 'joinCondition' => '`d1`.`field1` = `d2`.`field2`']]], + '`*PREFIX*data1` `d1` LEFT JOIN `*PREFIX*data2` `d2` ON `d1`.`field1` = `d2`.`field2`' ], ]; } @@ -646,18 +646,18 @@ class QueryBuilderTest extends \Test\TestCase { return [ [ 'd1', 'data2', null, null, - ['d1' => [['joinType' => 'right', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => null, 'joinCondition' => null]]], - '`*PREFIX*data1` d1 RIGHT JOIN `*PREFIX*data2` ON ' + ['`d1`' => [['joinType' => 'right', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => null, 'joinCondition' => null]]], + '`*PREFIX*data1` `d1` RIGHT JOIN `*PREFIX*data2` ON ' ], [ 'd1', 'data2', 'd2', null, - ['d1' => [['joinType' => 'right', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => 'd2', 'joinCondition' => null]]], - '`*PREFIX*data1` d1 RIGHT JOIN `*PREFIX*data2` d2 ON ' + ['`d1`' => [['joinType' => 'right', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => '`d2`', 'joinCondition' => null]]], + '`*PREFIX*data1` `d1` RIGHT JOIN `*PREFIX*data2` `d2` ON ' ], [ - 'd1', 'data2', 'd2', 'd1.`field1` = d2.`field2`', - ['d1' => [['joinType' => 'right', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => 'd2', 'joinCondition' => 'd1.`field1` = d2.`field2`']]], - '`*PREFIX*data1` d1 RIGHT JOIN `*PREFIX*data2` d2 ON d1.`field1` = d2.`field2`' + 'd1', 'data2', 'd2', '`d1`.`field1` = `d2`.`field2`', + ['`d1`' => [['joinType' => 'right', 'joinTable' => '`*PREFIX*data2`', 'joinAlias' => '`d2`', 'joinCondition' => '`d1`.`field1` = `d2`.`field2`']]], + '`*PREFIX*data1` `d1` RIGHT JOIN `*PREFIX*data2` `d2` ON `d1`.`field1` = `d2`.`field2`' ], ]; } diff --git a/tests/lib/Files/Cache/QuerySearchHelperTest.php b/tests/lib/Files/Cache/QuerySearchHelperTest.php index f458ef039e1..850cee066a1 100644 --- a/tests/lib/Files/Cache/QuerySearchHelperTest.php +++ b/tests/lib/Files/Cache/QuerySearchHelperTest.php @@ -129,6 +129,8 @@ class QuerySearchHelperTest extends TestCase { $builder->insert('filecache') ->values($values) ->execute(); + + return $builder->getLastInsertId(); } private function search(ISearchOperator $operator) { @@ -139,34 +141,34 @@ class QuerySearchHelperTest extends TestCase { public function comparisonProvider() { return [ - [new SearchComparison(ISearchComparison::COMPARE_GREATER_THAN, 'mtime', 125), [1002]], - [new SearchComparison(ISearchComparison::COMPARE_LESS_THAN, 'mtime', 125), [1001]], + [new SearchComparison(ISearchComparison::COMPARE_GREATER_THAN, 'mtime', 125), [1]], + [new SearchComparison(ISearchComparison::COMPARE_LESS_THAN, 'mtime', 125), [0]], [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'size', 125), []], - [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'size', 50), [1001, 1002]], - [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'name', 'foobar'), [1001]], - [new SearchComparison(ISearchComparison::COMPARE_LIKE, 'name', 'foo%'), [1001, 1002]], - [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'mimetype', 'image/jpg'), [1001]], - [new SearchComparison(ISearchComparison::COMPARE_LIKE, 'mimetype', 'image/%'), [1001, 1002]], + [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'size', 50), [0, 1]], + [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'name', 'foobar'), [0]], + [new SearchComparison(ISearchComparison::COMPARE_LIKE, 'name', 'foo%'), [0, 1]], + [new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'mimetype', 'image/jpg'), [0]], + [new SearchComparison(ISearchComparison::COMPARE_LIKE, 'mimetype', 'image/%'), [0, 1]], [new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_AND, [ new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'size', 50), - new SearchComparison(ISearchComparison::COMPARE_LESS_THAN, 'mtime', 125), [1001] - ]), [1001]], + new SearchComparison(ISearchComparison::COMPARE_LESS_THAN, 'mtime', 125), [0] + ]), [0]], [new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_OR, [ new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'mtime', 100), new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'mtime', 150), - ]), [1001, 1002]], + ]), [0, 1]], [new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_NOT, [ new SearchComparison(ISearchComparison::COMPARE_EQUAL, 'mtime', 150), - ]), [1001]], + ]), [0]], [new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_NOT, [ new SearchComparison(ISearchComparison::COMPARE_GREATER_THAN, 'mtime', 125), - ]), [1001]], + ]), [0]], [new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_NOT, [ new SearchComparison(ISearchComparison::COMPARE_LESS_THAN, 'mtime', 125), - ]), [1002]], + ]), [1]], [new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_NOT, [ new SearchComparison(ISearchComparison::COMPARE_LIKE, 'name', '%bar'), - ]), [1002]], + ]), [1]], ]; } @@ -178,22 +180,25 @@ class QuerySearchHelperTest extends TestCase { * @param array $fileIds */ public function testComparison(ISearchOperator $operator, array $fileIds) { - $this->addCacheEntry([ + $fileId = []; + $fileId[] = $this->addCacheEntry([ 'path' => 'foobar', - 'fileid' => 1001, 'mtime' => 100, 'size' => 50, 'mimetype' => 'image/jpg' ]); - $this->addCacheEntry([ + $fileId[] = $this->addCacheEntry([ 'path' => 'fooasd', - 'fileid' => 1002, 'mtime' => 150, 'size' => 50, 'mimetype' => 'image/png' ]); + $fileIds = array_map(function($i) use ($fileId) { + return $fileId[$i]; + }, $fileIds); + $results = $this->search($operator); sort($fileIds); diff --git a/tests/lib/Files/Config/UserMountCacheTest.php b/tests/lib/Files/Config/UserMountCacheTest.php index f455dc987af..a96b385fcbf 100644 --- a/tests/lib/Files/Config/UserMountCacheTest.php +++ b/tests/lib/Files/Config/UserMountCacheTest.php @@ -332,7 +332,7 @@ class UserMountCacheTest extends TestCase { $id = (int)$this->connection->lastInsertId('*PREFIX*filecache'); $this->fileIds[] = $id; } else { - $sql = 'SELECT fileid FROM *PREFIX*filecache WHERE `storage` = ? AND `path_hash` =?'; + $sql = 'SELECT `fileid` FROM `*PREFIX*filecache` WHERE `storage` = ? AND `path_hash` =?'; $query = $this->connection->prepare($sql); $query->execute([$storageId, md5($internalPath)]); return (int)$query->fetchColumn(); diff --git a/tests/lib/Repair/NC12/UpdateLanguageCodesTest.php b/tests/lib/Repair/NC12/UpdateLanguageCodesTest.php index 4379d1ba589..46422589541 100644 --- a/tests/lib/Repair/NC12/UpdateLanguageCodesTest.php +++ b/tests/lib/Repair/NC12/UpdateLanguageCodesTest.php @@ -24,6 +24,7 @@ namespace Test\Repair\NC12; use OC\Repair\NC12\UpdateLanguageCodes; +use OCP\DB\QueryBuilder\IQueryBuilder; use OCP\IConfig; use OCP\Migration\IOutput; use Test\TestCase; @@ -152,7 +153,7 @@ class UpdateLanguageCodesTest extends TestCase { ->where($qb->expr()->eq('userid', $qb->createNamedParameter($user['userid']))) ->andWhere($qb->expr()->eq('appid', $qb->createNamedParameter('core'))) ->andWhere($qb->expr()->eq('configkey', $qb->createNamedParameter('lang'))) - ->andWhere($qb->expr()->eq('configvalue', $qb->createNamedParameter($user['configvalue']))) + ->andWhere($qb->expr()->eq('configvalue', $qb->createNamedParameter($user['configvalue']), IQueryBuilder::PARAM_STR)) ->execute(); } } diff --git a/tests/lib/Share/ShareTest.php b/tests/lib/Share/ShareTest.php index 40e88d597a4..4ce40a2accd 100644 --- a/tests/lib/Share/ShareTest.php +++ b/tests/lib/Share/ShareTest.php @@ -1246,7 +1246,9 @@ class ShareTest extends \Test\TestCase { ->setParameter('owner', $this->user1->getUID()) ->setParameter('share_type', \OCP\Share::SHARE_TYPE_LINK); - $res = $qb->execute()->fetchAll(); + $result = $qb->execute(); + $res = $result->fetchAll(); + $result->closeCursor(); $this->assertCount(1, $res); $id = $res[0]['id']; @@ -1260,7 +1262,9 @@ class ShareTest extends \Test\TestCase { ->from('share') ->where($qb->expr()->eq('id', $qb->createParameter('id'))) ->setParameter('id', $id); - $hash = $qb->execute()->fetch()['share_with']; + $result = $qb->execute(); + $hash = $result->fetch()['share_with']; + $result->closeCursor(); $hasher = \OC::$server->getHasher(); |