refactoring création fonction select, ajout test pour le order by et group by, ajout group by, ne pas pouvoir sauver si la clef primaire n'est pas définie
This commit is contained in:
@@ -18,8 +18,15 @@ test("insert row",function () {
|
||||
$row->col1 = "test";
|
||||
$row->date1 = new \DateTime();
|
||||
$ret = $row->save();
|
||||
|
||||
$row2 = new Model();
|
||||
$row2->setTable("test");
|
||||
$row2->col1 = "test2";
|
||||
$row2->date1 = new \DateTime();
|
||||
$ret2 = $row2->save();
|
||||
|
||||
expect($ret)->toBe(true);
|
||||
expect($ret2)->toBe(true);
|
||||
});
|
||||
|
||||
test("querybuilder", function() {
|
||||
@@ -37,7 +44,7 @@ test("querybuilder", function() {
|
||||
expect(count($rows))->toBe(1);
|
||||
|
||||
$qb->reset();
|
||||
$rows = $qb->where("id",">",1)->columns("*")->get();
|
||||
$rows = $qb->where("id",">",2)->columns("*")->get();
|
||||
|
||||
expect($rows)->toBeArray();
|
||||
expect(count($rows))->toBe(0);
|
||||
@@ -53,18 +60,41 @@ test("querybuilder", function() {
|
||||
expect(count($rows))->toBe(1);
|
||||
});
|
||||
|
||||
test("order by", function(){
|
||||
$qb = new QueryBuilder("test");
|
||||
$rows = $qb->orderBy("id","DESC")->get();
|
||||
|
||||
expect($rows)->toBeArray();
|
||||
expect(count($rows))->toBe(2);
|
||||
|
||||
expect($rows[0]->col1)->toBe("test2");
|
||||
});
|
||||
|
||||
test("group by", function(){
|
||||
$qb = new QueryBuilder("test");
|
||||
$rows = $qb->columns("COUNT(*) as Nb")->get();
|
||||
|
||||
expect($rows)->toBeArray();
|
||||
expect(count($rows))->toBe(1);
|
||||
expect($rows[0]->Nb)->toBe(2);
|
||||
|
||||
$qb->reset();
|
||||
$rows = $qb->columns("COUNT(*) as Nb")->groupBy("id")->get();
|
||||
expect($rows)->toBeArray();
|
||||
expect(count($rows))->toBe(2);
|
||||
expect($rows[0]->Nb)->toBe(1);
|
||||
});
|
||||
|
||||
test("update row", function() {
|
||||
$qb = new QueryBuilder("test","id");
|
||||
$row = $qb->find(1);
|
||||
|
||||
$row->col1 = "test2";
|
||||
$row->col1 = "testupdate";
|
||||
$res = $row->save();
|
||||
|
||||
expect($res)->toBe(true);
|
||||
|
||||
$qb->reset();
|
||||
$rows = $qb->where("id",1)->columns("*")->get();
|
||||
expect($rows)->toBeArray();
|
||||
expect(count($rows))->toBe(1);
|
||||
expect($rows[0]->col1)->toBe("test2");
|
||||
expect($rows[0]->col1)->toBe("testupdate");
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user