Completed
Push — develop ( e67729...75d57c )
by Bartko
02:02
created

Zend2JoinTableTest::getAdapter()   B

Complexity

Conditions 2
Paths 2

Size

Total Lines 27
Code Lines 17

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
eloc 17
nc 2
nop 0
dl 0
loc 27
rs 8.8571
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace StefanoTreeTest\Integration\Adapter;
6
7
use StefanoTree\NestedSet\Adapter\AdapterInterface as TreeAdapterInterface;
8
use StefanoTree\NestedSet\Adapter\Zend2 as NestedSetAdapter;
9
use StefanoTree\NestedSet\Options;
10
use StefanoTreeTest\TestUtil;
11
12
class Zend2JoinTableTest extends AdapterJoinTableTestAbstract
13
{
14
    /**
15
     * @return TreeAdapterInterface
16
     */
17
    protected function getAdapter()
18
    {
19
        $options = new Options(array(
20
            'tableName' => 'tree_traversal_with_scope',
21
            'tableAlias' => 'ttws',
22
            'idColumnName' => 'tree_traversal_id',
23
            'scopeColumnName' => 'scope',
24
        ));
25
26
        if ('pgsql' == TEST_STEFANO_DB_ADAPTER) {
27
            $options->setSequenceName('tree_traversal_with_scope_tree_traversal_id_seq');
28
        }
29
30
        $adapter = new NestedSetAdapter($options, TestUtil::getZend2DbAdapter());
31
32
        $select = new \Zend\Db\Sql\Select(array('ttws' => 'tree_traversal_with_scope'));
33
        $select->join(
34
            array('ttm' => 'tree_traversal_metadata'),
35
            'ttm.tree_traversal_id = ttws.tree_traversal_id',
36
            array('metadata' => 'name'),
37
            $select::JOIN_LEFT
38
            );
39
40
        $adapter->setDefaultDbSelect($select);
41
42
        return $adapter;
43
    }
44
}
45