Exemplo n.º 1
0
 public function testGetColumns()
 {
     $table = new \Phinx\Db\Table('t', array(), $this->adapter);
     $table->addColumn('column1', 'string')->addColumn('column2', 'integer')->addColumn('column3', 'biginteger')->addColumn('column4', 'text')->addColumn('column5', 'float')->addColumn('column6', 'decimal')->addColumn('column7', 'time')->addColumn('column8', 'timestamp')->addColumn('column9', 'date')->addColumn('column10', 'boolean')->addColumn('column11', 'datetime')->addColumn('column12', 'binary')->addColumn('column13', 'string', array('limit' => 10));
     $pendingColumns = $table->getPendingColumns();
     $table->save();
     $columns = $this->adapter->getColumns('t');
     $this->assertCount(count($pendingColumns) + 1, $columns);
     for ($i = 0; $i++; $i < count($pendingColumns)) {
         $this->assertEquals($pendingColumns[$i], $columns[$i + 1]);
     }
 }
 public function testTimestampWithTimezone()
 {
     $table = new \Phinx\Db\Table('tztable', array('id' => false), $this->adapter);
     $table->addColumn('timestamp_tz', 'timestamp', array('timezone' => true))->addColumn('time_tz', 'time', array('timezone' => true))->addColumn('date_notz', 'date', array('timezone' => true))->addColumn('time_notz', 'timestamp')->save();
     $this->assertTrue($this->adapter->hasColumn('tztable', 'timestamp_tz'));
     $this->assertTrue($this->adapter->hasColumn('tztable', 'time_tz'));
     $this->assertTrue($this->adapter->hasColumn('tztable', 'date_notz'));
     $this->assertTrue($this->adapter->hasColumn('tztable', 'time_notz'));
     $columns = $this->adapter->getColumns('tztable');
     foreach ($columns as $column) {
         if (substr($column->getName(), -4) === 'notz') {
             $this->assertFalse($column->isTimezone(), 'column: ' . $column->getName());
         } else {
             $this->assertTrue($column->isTimezone(), 'column: ' . $column->getName());
         }
     }
 }