phalApiModelNotORM = new PhalApi_Model_NotORM_Tmp(); } protected function tearDown() { } /** * @group testGet */ public function testGet() { $id = '1'; $fields = '*'; $rs = $this->phalApiModelNotORM->get($id, $fields); $this->assertNotEmpty($rs); $this->assertEquals('welcome here', $rs['content']); } /** * @group testInsert */ public function testInsert() { $data = array('id' => 100, 'content' => 'phpunit', 'ext_data' => array('year' => 2015)); $id = NULL; $rs = $this->phalApiModelNotORM->insert($data, $id); $rs = $this->phalApiModelNotORM->get(100, 'content, ext_data'); $this->assertEquals('phpunit', $rs['content']); $this->assertEquals(array('year' => 2015), $rs['ext_data']); } /** * @group testUpdate * @depends testInsert */ public function testUpdate() { $id = '100'; $data = array('content' => 'phpunit2', 'ext_data' => array('year' => 2020)); $this->phalApiModelNotORM->update($id, $data); $rs = $this->phalApiModelNotORM->get($id, 'content, ext_data'); $this->assertEquals('phpunit2', $rs['content']); $this->assertEquals(array('year' => 2020), $rs['ext_data']); } /** * @group testDelete */ public function testDelete() { $id = '100'; $rs = $this->phalApiModelNotORM->delete($id); } /** * @dataProvider provideDefaultTableData */ public function testDefaultTable($tableName, $tableClass) { $model = new $tableClass(); $this->assertEquals($tableName, $model->getTableName(null)); } public function provideDefaultTableData() { return array( array('defaulttable', 'Model_DefaultTable'), array('default_table', 'Model_Default_Table'), array('default_table', 'Demo_Model_Default_Table'), array('model_default_table', 'Model_Model_Default_Table'), array('wtf_table', 'WTF_Table'), ); } } class PhalApi_Model_NotORM_Tmp extends PhalApi_Model_NotORM { protected function getTableName($id = NULL) { return 'tmp'; } } class PhalApi_Model_NotORM_Test extends PhalApi_Model_NotORM { public function getTableName($id) { return parent::getTableName($id); } } class Model_DefaultTable extends PhalApi_Model_NotORM_Test { } class Model_Default_Table extends PhalApi_Model_NotORM_Test { } class Demo_Model_Default_Table extends PhalApi_Model_NotORM_Test { } class Model_Model_Default_Table extends PhalApi_Model_NotORM_Test { } class WTF_Table extends PhalApi_Model_NotORM_Test { }