assertEquals( $expected, Formatter::format($query, $options) ); } public function formatQueries() { return array( array( 'SELECT 1', 'SELECT' . '
' . ' 1', array('type' => 'html') ), array( 'SELECT 1 # Comment', 'SELECT' . '
' . ' 1 # Comment' . "\n" . '', array('type' => 'html') ), array( 'SELECT HEX("1")', 'SELECT' . '
' . ' HEX("1")', array('type' => 'html') ), array( 'SELECT * FROM foo WHERE bar=1', 'SELECT' . '
' . ' *' . '
' . 'FROM' . '
' . ' foo' . '
' . 'WHERE' . '
' . ' bar = 1', array('type' => 'html') ), array( 'CREATE PROCEDURE SPTEST() BEGIN FROM a SELECT *; END', 'CREATE' . '
' . 'PROCEDURE SPTEST()' . '
' . 'BEGIN' . '
' . 'FROM' . '
' . ' a' . '
' . 'SELECT' . '
' . ' *;' . '
' . 'END', array('type' => 'html') ), array( 'INSERT INTO foo VALUES (0, 0, 0), (1, 1, 1)', 'INSERT' . '
' . 'INTO' . '
' . ' foo' . '
' . 'VALUES' . '(0, 0, 0),' . '(1, 1, 1)', array('type' => 'html') ), array( 'SELECT 1', "\x1b[35mSELECT\n \x1b[92m1\x1b[0m", array('type' => 'cli') ), array( 'SELECT "Text" AS BAR', "\x1b[35mSELECT\n \x1b[91m\"Text\" \x1b[35mAS \x1b[39mBAR\x1b[0m", array('type' => 'cli') ), array( 'SELECT coditm AS Item, descripcion AS Descripcion, contenedores AS Contenedores, IF(suspendido = 1, Si, NO) AS Suspendido FROM `DW_articulos` WHERE superado = 0', 'SELECT' . '
' . ' coditm AS Item,' . '
' . ' descripcion AS Descripcion,' . '
' . ' contenedores AS Contenedores,' . '
' . ' IF(suspendido = 1, Si, NO) AS Suspendido' . '
' . 'FROM' . '
' . ' `DW_articulos`' . '
' . 'WHERE' . '
' . ' superado = 0', array('type' => 'html'), ), array( 'SELECT 1 -- comment', 'SELECT' . '
' . ' 1 -- comment' . "\n" . '', array('type' => 'html'), ), array( 'SELECT 1 -- comment', 'SELECT' . '
' . ' 1', array('type' => 'html', 'remove_comments' => true), ), array( 'CREATE TABLE IF NOT EXISTS `pma__bookmark` (' . "\n" . ' `id` int(11) NOT NULL auto_increment,' . "\n" . ' `dbase` varchar(255) NOT NULL default "",' . "\n" . ' `user` varchar(255) NOT NULL default "",' . "\n" . ' `label` varchar(255) COLLATE utf8_general_ci NOT NULL default "",' . "\n" . ' `query` text NOT NULL,' . "\n" . ' PRIMARY KEY (`id`)' . "\n", 'CREATE TABLE IF NOT EXISTS `pma__bookmark`(' . '
' . ' `id` INT(11) NOT NULL AUTO_INCREMENT,' . '
' . ' `dbase` VARCHAR(255) NOT NULL DEFAULT "",' . '
' . ' `user` VARCHAR(255) NOT NULL DEFAULT "",' . '
' . ' `label` VARCHAR(255) COLLATE utf8_general_ci NOT NULL DEFAULT "",' . '
' . ' `query` TEXT NOT NULL,' . '
' . ' PRIMARY KEY(`id`)', array('type' => 'html'), ), array( "select 'xss' from `xss` , nxss /*sxss*/", 'SELECT
\'<s>xss\'
FROM
`<s>xss`,
< s > nxss /*s<s>xss*/', array('type' => 'html'), ), array( "select 'text\x1b[33mcolor-inj' from tbl", "\x1b[35mSELECT\n \x1b[91m'text\\x1B[33mcolor-inj'\n\x1b[35mFROM\n \x1b[39mtbl\x1b[0m", array('type' => 'cli'), ), ); } }