Exemplo n.º 1
0
 function test_set_sort_clause()
 {
     $parser = new SQL_Parser(null, 'MySQL');
     $compiler = new SQL_Compiler();
     $sql = "SELECT a,b,c from Foo";
     $parsed = $parser->parse($sql);
     $wrapper = new SQL_Parser_wrapper($parsed, 'MySQL');
     $wrapper->setSortClause("c");
     $this->assertEquals("select a, b, c from Foo order by c asc", $compiler->compile($parsed));
     $wrapper->setSortClause("b");
     $this->assertEquals("select a, b, c from Foo order by b asc", $compiler->compile($parsed));
     $wrapper->setSortClause("b desc");
     $this->assertEquals("select a, b, c from Foo order by b desc", $compiler->compile($parsed));
     $wrapper->setSortClause("b desc, c");
     $this->assertEquals("select a, b, c from Foo order by b desc, c asc", $compiler->compile($parsed));
     $wrapper->addSortClause("d");
     $this->assertEquals("select a, b, c from Foo order by b desc, c asc, d asc", $compiler->compile($parsed));
 }