Пример #1
0
 public function testQueryBuilderAliasCreatedByConnection()
 {
     $mockQBAdapter = m::mock('\\Pixie\\QueryBuilder\\Adapters\\Mysql');
     $this->container->setInstance('\\Pixie\\QueryBuilder\\Adapters\\Mysqlmock', $mockQBAdapter);
     $connection = new Connection('mysqlmock', array('prefix' => 'cb_'), 'DBAlias', $this->container);
     $this->assertEquals($this->mockPdo, $connection->getPdoInstance());
     $this->assertInstanceOf('\\Pixie\\QueryBuilder\\QueryBuilderHandler', \DBAlias::newQuery());
 }
Пример #2
0
 /**
  * @param null|\Pixie\Connection $connection
  *
  * @throws \Pixie\Exception
  */
 public function __construct(Connection $connection = null)
 {
     if (is_null($connection)) {
         if (!($connection = Connection::getStoredConnection())) {
             throw new Exception('No database connection found.', 1);
         }
     }
     $this->connection = $connection;
     $this->container = $this->connection->getContainer();
     $this->pdo = $this->connection->getPdoInstance();
     $this->adapter = $this->connection->getAdapter();
     $this->adapterConfig = $this->connection->getAdapterConfig();
     if (isset($this->adapterConfig['prefix'])) {
         $this->tablePrefix = $this->adapterConfig['prefix'];
     }
     // Query builder adapter instance
     $this->adapterInstance = $this->container->build('\\Pixie\\QueryBuilder\\Adapters\\' . ucfirst($this->adapter), array($this->connection));
     $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 }