public function testOrNotGroups() { $builder = new BaseBuilder('user', $this->db); $builder->where('name', 'Darth')->orNotGroupStart()->where('id >', 3)->where('name !=', 'Luke')->groupEnd(); $expectedSQL = "SELECT * FROM \"user\" WHERE \"name\" = :name OR NOT ( \"id\" > :id AND \"name\" != :name0 )"; $this->assertEquals($expectedSQL, str_replace("\n", ' ', $builder->getCompiledSelect())); }
public function testCountAllResults() { $builder = new BaseBuilder('jobs', $this->db); $answer = $builder->where('id >', 3)->countAllResults(null, true); $expectedSQL = "SELECT COUNT(*) AS \"numrows\" FROM \"jobs\" WHERE \"id\" > :id"; $this->assertEquals($expectedSQL, str_replace("\n", ' ', $answer)); }
public function testUpdate() { $builder = new BaseBuilder('jobs', $this->db); $builder->where('id', 1)->update(['name' => 'Programmer'], null, null, true); $expectedSQL = "UPDATE \"jobs\" SET \"name\" = :name WHERE \"id\" = :id"; $expectedBinds = ['id' => 1, 'name' => 'Programmer']; $this->assertEquals($expectedSQL, str_replace("\n", ' ', $builder->getCompiledUpdate())); $this->assertEquals($expectedBinds, $builder->getBinds()); }