/**
  * @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));
 }