for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace StefanoTreeTest\Integration\Adapter;
use StefanoTree\NestedSet\Adapter\AdapterInterface as TreeAdapterInterface;
use StefanoTree\NestedSet\Adapter\Doctrine2DBAL as NestedSetAdapter;
use StefanoTree\NestedSet\Options;
use StefanoTreeTest\TestUtil;
class Doctrine2DBALJoinTableTest extends AdapterJoinTableTestAbstract
{
/**
* @return TreeAdapterInterface
*/
protected function getAdapter()
$options = new Options(array(
'tableName' => 'tree_traversal_with_scope',
'idColumnName' => 'tree_traversal_id',
'scopeColumnName' => 'scope',
));
if ('pgsql' == TEST_STEFANO_DB_ADAPTER) {
$options->setSequenceName('tree_traversal_with_scope_tree_traversal_id_seq');
}
$adapter = new NestedSetAdapter($options, TestUtil::getDoctrine2Connection());
$selectBuilder = function () {
$select = TestUtil::getDoctrine2Connection()->createQueryBuilder();
$select->select('tree_traversal_with_scope.*', 'ttm.name AS metadata')
->from('tree_traversal_with_scope')
->leftJoin('tree_traversal_with_scope', 'tree_traversal_metadata', 'ttm', 'ttm.tree_traversal_id = tree_traversal_with_scope.tree_traversal_id');
return $select;
};
$adapter->setDbSelectBuilder($selectBuilder);
return $adapter;