/** * Tests Postgresql::hasDefault for autoincrement fields * * @issue https://github.com/phalcon/phalcon-devtools/issues/853 * @author Serghei Iakovlev <*****@*****.**> * @since 2016-09-28 */ public function testHasAutoIncrementDefault() { $this->specify('The autoincrement column has default value', function () { $column = Column::__set_state(['_columnName' => 'id', '_schemaName' => null, '_type' => 14, '_typeReference' => -1, '_typeValues' => null, '_isNumeric' => true, '_size' => 0, '_scale' => 0, '_default' => "nextval('images_id_seq'::regclass)", '_unsigned' => false, '_notNull' => true, '_primary' => false, '_autoIncrement' => true, '_first' => true, '_after' => null, '_bindType' => 1]); expect($column->hasDefault())->false(); expect($column->isAutoIncrement())->true(); }); }
/** * Tests Postgresql::describeColumns for Postgresql autoincrement column * * @issue https://github.com/phalcon/phalcon-devtools/issues/853 * @author Serghei Iakovlev <*****@*****.**> * @since 2016-09-28 */ public function testDescribeAutoIncrementColumns() { $this->specify('The table columns array contains incorrect initialized objects', function () { $columns = [Column::__set_state(['_columnName' => 'id', '_schemaName' => null, '_type' => 14, '_typeReference' => -1, '_typeValues' => null, '_isNumeric' => true, '_size' => 0, '_scale' => 0, '_default' => "nextval('images_id_seq'::regclass)", '_unsigned' => false, '_notNull' => true, '_primary' => false, '_autoIncrement' => true, '_first' => true, '_after' => null, '_bindType' => 1]), Column::__set_state(['_columnName' => 'base64', '_schemaName' => null, '_type' => 6, '_typeReference' => -1, '_typeValues' => null, '_isNumeric' => false, '_size' => null, '_scale' => 0, '_default' => null, '_unsigned' => false, '_notNull' => false, '_primary' => false, '_autoIncrement' => false, '_first' => false, '_after' => 'id', '_bindType' => 2])]; expect($this->connection->describeColumns('images', null))->equals($columns); expect($this->connection->describeColumns('images', TEST_DB_POSTGRESQL_SCHEMA))->equals($columns); }); }