public function testNullWithoutDefaultValue() { $this->markTestSkipped('Skipping for now. See Github Issue #265.'); // construct table with default/null combinations $table = new \Phinx\Db\Table('table1', array(), $this->adapter); $table->addColumn("aa", "string", array("null" => true))->addColumn("bb", "string", array("null" => false))->addColumn("cc", "string", array("null" => true, "default" => "some1"))->addColumn("dd", "string", array("null" => false, "default" => "some2"))->save(); // load table info $columns = $this->adapter->getColumns("table1"); $this->assertEquals(count($columns), 5); $aa = $columns[1]; $bb = $columns[2]; $cc = $columns[3]; $dd = $columns[4]; $this->assertEquals("aa", $aa->getName()); $this->assertEquals(true, $aa->isNull()); $this->assertEquals(null, $aa->getDefault()); $this->assertEquals("bb", $bb->getName()); $this->assertEquals(false, $bb->isNull()); $this->assertEquals(null, $bb->getDefault()); $this->assertEquals("cc", $cc->getName()); $this->assertEquals(true, $cc->isNull()); $this->assertEquals("some1", $cc->getDefault()); $this->assertEquals("dd", $dd->getName()); $this->assertEquals(false, $dd->isNull()); $this->assertEquals("some2", $dd->getDefault()); }
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', 'datetime')->addColumn('column8', 'time')->addColumn('column9', 'timestamp')->addColumn('column10', 'date')->addColumn('column11', 'binary')->addColumn('column12', 'boolean')->addColumn('column13', 'string', array('limit' => 10))->addColumn('column15', 'integer', 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 testGetColumnsReservedTableName() { $table = new \Phinx\Db\Table('group', array(), $this->adapter); $table->addColumn('column1', 'string')->addColumn('column2', 'integer')->addColumn('column3', 'biginteger')->addColumn('column4', 'text')->addColumn('column5', 'float')->addColumn('column6', 'decimal')->addColumn('column7', 'datetime')->addColumn('column8', 'time')->addColumn('column9', 'timestamp')->addColumn('column10', 'date')->addColumn('column11', 'binary')->addColumn('column12', 'boolean')->addColumn('column13', 'string', array('limit' => 10))->addColumn('column15', 'integer', array('limit' => 10))->addColumn('column16', 'geometry')->addColumn('column17', 'point')->addColumn('column18', 'linestring')->addColumn('column19', 'polygon')->addColumn('column20', 'uuid')->addColumn('column21', 'set', array('values' => "one, two"))->addColumn('column22', 'enum', array('values' => array('three', 'four'))); $pendingColumns = $table->getPendingColumns(); $table->save(); $columns = $this->adapter->getColumns('group'); $this->assertCount(count($pendingColumns) + 1, $columns); for ($i = 0; $i++; $i < count($pendingColumns)) { $this->assertEquals($pendingColumns[$i], $columns[$i + 1]); } }