Пример #1
0
 public function testWhereWithNotNullCondition()
 {
     $qb = new \Quark\Query\Select();
     $query = $qb->select('id', 'username', 'pass')->from('users', 'u')->where('u.age', '!=', null)->compile();
     $expectedQuery = "SELECT id, username, pass FROM users, u WHERE u.age IS NOT NULL";
     $this->assertSame($expectedQuery, $query);
 }
Пример #2
0
 public function testExceptionWhenMixingUsingAndOn()
 {
     $qb = new \Quark\Query\Select();
     try {
         $qb->select('u.user_id', 'u.username', 'pass')->from('users', 'u')->join(array('posts', 'p'))->using('user_id')->on('p.user_id', '=', 'u.user_id')->compile();
         $this->assertTrue(false, 'Exception not thrown');
     } catch (\Quark\Exception\QuarkException $e) {
         $this->assertTrue(true, 'Exception thrown');
     }
 }
Пример #3
0
 public function testExceptionWhenUsingTableAliasInInsertSelectConstruction()
 {
     $qb = new \Quark\Query\Select(array('name', 'email'));
     $select = $qb->from(array('users', 'u'))->join(array('posts', 'p'), 'LEFT')->on('p.user_id', '=', 'u.id')->where('u.name', '=', 'test')->havingOpen()->having('u.age', '>', '10')->orHaving('u.age', '<', '14')->havingClose()->orderBy('u.age', 'DESC');
     try {
         $this->queryBuilder->table(array('posts', 'p'))->columns(array('p.username', 'p.posts', 'p.age'))->select($select)->compile();
         $this->assertTrue(false, 'Exception not thrown');
     } catch (\Quark\Exception\QuarkException $e) {
         $this->assertTrue(true, 'Exception thrown');
     }
 }
Пример #4
0
 public function testQueryWithMultipleOrderBy()
 {
     $qb = new \Quark\Query\Select();
     $query = $qb->select('id', 'username', 'pass')->from('users', 'u')->limit(10)->offset(10)->compile();
     $expectedQuery = "SELECT id, username, pass FROM users, u LIMIT 10 OFFSET 10";
     $this->assertSame($expectedQuery, $query);
 }