StatementTest.php 1.53 KB
Newer Older
1
<?php
2

3 4
namespace Doctrine\Tests\DBAL\Functional\Driver\SQLAnywhere;

5
use Doctrine\DBAL\Driver\SQLAnywhere\Driver;
6
use Doctrine\DBAL\DriverManager;
Sergei Morozov's avatar
Sergei Morozov committed
7
use Doctrine\Tests\DbalFunctionalTestCase;
8
use function extension_loaded;
9

Sergei Morozov's avatar
Sergei Morozov committed
10
class StatementTest extends DbalFunctionalTestCase
11
{
12 13 14 15 16 17 18 19
    protected function setUp()
    {
        if (! extension_loaded('sqlanywhere')) {
            $this->markTestSkipped('sqlanywhere is not installed.');
        }

        parent::setUp();

Sergei Morozov's avatar
Sergei Morozov committed
20
        if ($this->connection->getDriver() instanceof Driver) {
Sergei Morozov's avatar
Sergei Morozov committed
21
            return;
22
        }
Sergei Morozov's avatar
Sergei Morozov committed
23 24

        $this->markTestSkipped('sqlanywhere only test.');
25 26
    }

27 28
    public function testNonPersistentStatement()
    {
Sergei Morozov's avatar
Sergei Morozov committed
29
        $params               = $this->connection->getParams();
30 31 32 33 34 35
        $params['persistent'] = false;

        $conn = DriverManager::getConnection($params);

        $conn->connect();

Sergei Morozov's avatar
Sergei Morozov committed
36
        self::assertTrue($conn->isConnected(), 'No SQLAnywhere-Connection established');
37 38

        $prepStmt = $conn->prepare('SELECT 1');
Sergei Morozov's avatar
Sergei Morozov committed
39
        self::assertTrue($prepStmt->execute(), ' Statement non-persistent failed');
40 41 42 43
    }

    public function testPersistentStatement()
    {
Sergei Morozov's avatar
Sergei Morozov committed
44
        $params               = $this->connection->getParams();
45 46 47 48 49 50
        $params['persistent'] = true;

        $conn = DriverManager::getConnection($params);

        $conn->connect();

Sergei Morozov's avatar
Sergei Morozov committed
51
        self::assertTrue($conn->isConnected(), 'No SQLAnywhere-Connection established');
52 53

        $prepStmt = $conn->prepare('SELECT 1');
Sergei Morozov's avatar
Sergei Morozov committed
54
        self::assertTrue($prepStmt->execute(), ' Statement persistent failed');
55 56
    }
}