public function testRenameField() { $model = new Kwf_Update_Action_Db_TestModel(); $this->assertNotNull($model->getRow('foo')); $a = new Kwf_Update_Action_Db_DropTable(); $a->model = $model; $a->table = 'foo'; $a->silent = true; $a->update(); $this->assertNull($model->getRow('foo')); }
public function testChangeFieldDontChangeDefault() { $model = new Kwf_Update_Action_Db_TestModel(); $rows = $model->getRow('foo')->getChildRows('Fields'); $this->assertEquals(2, count($rows)); $a = new Kwf_Update_Action_Db_ChangeField(); $a->model = $model; $a->table = 'foo'; $a->field = 'bar'; $a->silent = true; $a->update(); $row = $a->model->getRow('foo')->getChildRows('Fields', $a->model->select()->whereId('bar'))->current(); $this->assertEquals('bar', $row->field); $this->assertEquals('text', $row->type); $this->assertEquals('5', $row->default); }
public function testRenameField() { $model = new Kwf_Update_Action_Db_TestModel(); $rows = $model->getRow('foo')->getChildRows('Fields'); $this->assertEquals(2, count($rows)); $a = new Kwf_Update_Action_Db_DropField(); $a->model = $model; $a->table = 'foo'; $a->field = 'bar'; $a->silent = true; $a->update(); $rows = $model->getRow('foo')->getChildRows('Fields'); $this->assertEquals(1, count($rows)); $row = $model->getRow('foo')->getChildRows('Fields', $model->select()->whereId('bar'))->current(); $this->assertNull($row); }
public function testDropTable() { $model = new Kwf_Update_Action_Db_TestModel(); $rows = $model->getRow('foo')->getChildRows('Fields'); $this->assertEquals(2, count($rows)); $a = new Kwf_Update_Action_Db_RenameField(); $a->model = $model; $a->table = 'foo'; $a->field = 'bar'; $a->newName = 'new_bar'; $a->silent = true; $a->update(); $rows = $a->model->getRow('foo')->getChildRows('Fields'); $this->assertEquals(2, count($rows)); $rows = $a->model->getRow('foo')->getChildRows('Fields', $a->model->select()->whereId('new_bar')); $this->assertEquals(1, count($rows)); $row = $rows->current(); $this->assertEquals('new_bar', $row->field); $this->assertEquals('text', $row->type); }