/** * @covers PDOK\Connector::setAttribute */ public function testConnectedSetAttribute() { $c = new Connector('sqlite::memory:'); $c->connect(); $this->assertEquals(0, $c->getAttribute(\PDO::ATTR_CASE)); $c->setAttribute(\PDO::ATTR_CASE, \PDO::CASE_UPPER); $this->assertEquals(\PDO::CASE_UPPER, $c->getAttribute(\PDO::ATTR_CASE)); }
/** * @covers PDOK\Connector::query() * @covers PDOK\Connector::prepare() */ function testCustomStatementReturn() { $statementClass = __NAMESPACE__ . '\\ConnectorStatementTestStatement'; $connector = new \PDOK\Connector('sqlite::memory:'); $connector->setAttribute(\PDO::ATTR_STATEMENT_CLASS, array($statementClass)); $connector->exec("CREATE TABLE foo(id INTEGER);"); $stmt = $connector->prepare('SELECT * FROM foo'); $this->assertInstanceOf('PDOK\\StatementWrapper', $stmt); $this->assertInstanceOf($statementClass, $stmt->statement); $stmt = $connector->query('SELECT * FROM foo'); $this->assertInstanceOf('PDOK\\StatementWrapper', $stmt); $this->assertInstanceOf($statementClass, $stmt->statement); }
public function testAttributesSurviveDisconnection() { $expected = \PDO::CASE_UPPER; $conn = new \PDOK\Connector('sqlite::memory:'); $conn->setAttribute(\PDO::ATTR_CASE, $expected); $this->assertEquals($expected, $conn->getAttribute(\PDO::ATTR_CASE)); $conn->connect(); $this->assertEquals($expected, $conn->getAttribute(\PDO::ATTR_CASE)); $conn->disconnect(); $this->assertEquals($expected, $conn->getAttribute(\PDO::ATTR_CASE)); $conn->connect(); $this->assertEquals($expected, $conn->getAttribute(\PDO::ATTR_CASE)); }