コード例 #1
0
ファイル: TableTest.php プロジェクト: kasonyang/hitar
 function testTable()
 {
     $tb = Test::table();
     $new_data = ['nickname' => 'z3'];
     $tb->insert($new_data);
     $this->assertEquals(1, $tb->count());
     $this->assertEquals([['nickname' => 'z3']], $tb->selectData());
     $update = $tb->update(['nickname' => 'w5']);
     $this->assertEquals(1, $update);
     $this->assertEquals([['nickname' => 'w5']], $tb->selectData());
     $tb_new = clone $tb;
     $tb_new->where('nickname=%s', 'w5');
     //$this->assertEquals('SELEC', $tb->buildSelect());
     $this->assertEquals([['nickname' => 'w5']], $tb_new->selectData());
     $tb_new->clearWhere();
     $tb_new->andWhere(['nickname' => 'w5']);
     //$this->assertEquals('SELEC', $tb->buildSelect());
     $this->assertEquals([['nickname' => 'w5']], $tb_new->selectData());
     $this->assertEquals(1, $tb_new->update(['nickname' => 'z3']));
     $this->assertEquals([['nickname' => 'z3']], $tb->selectData());
     $obj_list = $tb->select();
     $obj = $obj_list[0];
     /* @var $obj Test */
     $this->assertEquals('z3', $obj->nickname);
     $tb->delete();
     $test = new Test();
     $test->nickname = 'hehe';
     $this->assertEquals(TRUE, $test->save());
     $this->assertEquals('hehe', Test::table()->selectData()[0]['nickname']);
     $test->delete();
     $this->assertEquals([], $tb->selectData());
     $this->assertEquals('SELECT * FROM test Test', $tb->buildSelect());
     $this->assertEquals('SELECT * FROM test Test LIMIT 10', $tb->buildSelect(10));
     $this->assertEquals('SELECT * FROM test Test LIMIT 10 OFFSET 10', $tb->buildSelect(10, 10));
 }
コード例 #2
0
ファイル: initTest.php プロジェクト: kasonyang/hitar
function init()
{
    $tb = Test::table();
    $sm = $tb->getConnection()->getSchemaManager();
    $schema = $sm->createSchema();
    $new_tb = $schema->createTable('test');
    $new_tb->addColumn('nickname', 'string', ['length' => 100]);
    $new_tb2 = $schema->createTable('tableexample');
    $new_tb2->addColumn('id', 'string', ['length' => 100]);
    $new_tb2->addColumn('name', 'string', ['length' => 100]);
    $sqls = $schema->toSql($tb->getConnection()->getDatabasePlatform());
    foreach ($sqls as $q) {
        $tb->getConnection()->exec($q);
    }
}
コード例 #3
0
ファイル: RecordTest.php プロジェクト: kasonyang/hitar
 function testRecord()
 {
     $this->assertEquals('test', Test::table()->getTableName());
     $this->assertEquals('Test', Test::table()->getTableAliasName());
 }