summaryrefslogtreecommitdiffstats
path: root/tests/Utils
diff options
context:
space:
mode:
authorMaurício Meneghini Fauth <mauriciofauth@gmail.com>2019-01-08 21:32:02 -0200
committerMaurício Meneghini Fauth <mauriciofauth@gmail.com>2019-01-16 17:21:25 -0200
commit86c5baebda24c1721fb6881df8671a3c7df60e8b (patch)
tree0a76d58ea229d1008e169b1c5b25ce90dde91808 /tests/Utils
parent28427543566b6dd32fe44db704ea41368ba55c0e (diff)
downloadsql-parser-86c5baebda24c1721fb6881df8671a3c7df60e8b.zip
sql-parser-86c5baebda24c1721fb6881df8671a3c7df60e8b.tar.gz
sql-parser-86c5baebda24c1721fb6881df8671a3c7df60e8b.tar.bz2
Apply phpmyadmin/coding-standard
Signed-off-by: Maurício Meneghini Fauth <mauriciofauth@gmail.com>
Diffstat (limited to 'tests/Utils')
-rw-r--r--tests/Utils/BufferedQueryTest.php90
-rw-r--r--tests/Utils/CLITest.php135
-rw-r--r--tests/Utils/ErrorTest.php24
-rw-r--r--tests/Utils/FormatterTest.php249
-rw-r--r--tests/Utils/MiscTest.php130
-rw-r--r--tests/Utils/QueryTest.php395
-rw-r--r--tests/Utils/RoutineTest.php326
-rw-r--r--tests/Utils/TableTest.php138
-rw-r--r--tests/Utils/TokensTest.php90
9 files changed, 871 insertions, 706 deletions
diff --git a/tests/Utils/BufferedQueryTest.php b/tests/Utils/BufferedQueryTest.php
index 731fc0e..f31dd78 100644
--- a/tests/Utils/BufferedQueryTest.php
+++ b/tests/Utils/BufferedQueryTest.php
@@ -27,7 +27,7 @@ class BufferedQueryTest extends TestCase
*
* @var array
*/
- $statements = array();
+ $statements = [];
/**
* The `BufferedQuery` instance used for extraction.
@@ -99,21 +99,21 @@ class BufferedQueryTest extends TestCase
'/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;' . "\n" .
'/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */';
- return array(
- array(
+ return [
+ [
"SELECT '\'';\nSELECT '\'';",
8,
- array(
+ [
'parse_delimiter' => true,
'add_delimiter' => true,
- ),
- array(
+ ],
+ [
"SELECT '\'';",
"SELECT '\'';",
- ),
- ),
+ ],
+ ],
- array(
+ [
"CREATE TABLE `test` (\n" .
" `txt` varchar(10)\n" .
");\n" .
@@ -121,58 +121,58 @@ class BufferedQueryTest extends TestCase
"INSERT INTO `test` (`txt`) VALUES('\\\\');\n" .
"INSERT INTO `test` (`txt`) VALUES('xyz');\n",
8,
- array(
+ [
'parse_delimiter' => true,
'add_delimiter' => true,
- ),
- array(
+ ],
+ [
"CREATE TABLE `test` (\n" .
" `txt` varchar(10)\n" .
');',
"INSERT INTO `test` (`txt`) VALUES('abc');",
"INSERT INTO `test` (`txt`) VALUES('\\\\');",
"INSERT INTO `test` (`txt`) VALUES('xyz');",
- ),
- ),
+ ],
+ ],
- array(
+ [
'SELECT """""""";' .
'SELECT """\\\\"""',
8,
- array(
+ [
'parse_delimiter' => true,
'add_delimiter' => true,
- ),
- array(
+ ],
+ [
'SELECT """""""";',
'SELECT """\\\\"""',
- ),
- ),
+ ],
+ ],
- array(
+ [
'DELIMITER A_VERY_LONG_DEL' . "\n" .
'SELECT 1 A_VERY_LONG_DEL' . "\n" .
'DELIMITER ;',
3,
- array(
+ [
'parse_delimiter' => true,
'add_delimiter' => true,
- ),
- array(
+ ],
+ [
'DELIMITER A_VERY_LONG_DEL',
'SELECT 1 A_VERY_LONG_DEL',
'DELIMITER ;',
- ),
- ),
+ ],
+ ],
- array(
+ [
$query,
32,
- array(
+ [
'parse_delimiter' => false,
'add_delimiter' => false,
- ),
- array(
+ ],
+ [
'/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */',
'/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */',
@@ -216,17 +216,17 @@ class BufferedQueryTest extends TestCase
'/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */',
'/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */',
- ),
- ),
+ ],
+ ],
- array(
+ [
$query,
32,
- array(
+ [
'parse_delimiter' => true,
'add_delimiter' => false,
- ),
- array(
+ ],
+ [
'/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */',
'/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */',
@@ -274,17 +274,17 @@ class BufferedQueryTest extends TestCase
'/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */',
'/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */',
- ),
- ),
+ ],
+ ],
- array(
+ [
$query,
64,
- array(
+ [
'parse_delimiter' => false,
'add_delimiter' => true,
- ),
- array(
+ ],
+ [
'/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;',
'/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;',
@@ -328,8 +328,8 @@ class BufferedQueryTest extends TestCase
'/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;',
'/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */',
- ),
- ),
- );
+ ],
+ ],
+ ];
}
}
diff --git a/tests/Utils/CLITest.php b/tests/Utils/CLITest.php
index f627dfd..ebcd35e 100644
--- a/tests/Utils/CLITest.php
+++ b/tests/Utils/CLITest.php
@@ -8,7 +8,7 @@ class CLITest extends TestCase
{
private function getCLI($getopt)
{
- $cli = $this->getMockBuilder('PhpMyAdmin\SqlParser\Utils\CLI')->setMethods(array('getopt'))->getMock();
+ $cli = $this->getMockBuilder('PhpMyAdmin\SqlParser\Utils\CLI')->setMethods(['getopt'])->getMock();
$cli->method('getopt')->willReturn($getopt);
return $cli;
@@ -23,8 +23,8 @@ class CLITest extends TestCase
{
$cli = new \PhpMyAdmin\SqlParser\Utils\CLI();
$this->assertEquals(
- $cli->getopt('', array()),
- array()
+ $cli->getopt('', []),
+ []
);
}
@@ -44,50 +44,59 @@ class CLITest extends TestCase
public function highlightParams()
{
- return array(
- array(
- array('q' => 'SELECT 1'),
+ return [
+ [
+ ['q' => 'SELECT 1'],
"\x1b[35mSELECT\n \x1b[92m1\x1b[0m\n",
0,
- ),
- array(
- array('query' => 'SELECT 1'),
+ ],
+ [
+ ['query' => 'SELECT 1'],
"\x1b[35mSELECT\n \x1b[92m1\x1b[0m\n",
0,
- ),
- array(
- array('q' => 'SELECT /* comment */ 1 /* other */', 'f' => 'text'),
+ ],
+ [
+ [
+ 'q' => 'SELECT /* comment */ 1 /* other */',
+ 'f' => 'text',
+ ],
"SELECT\n /* comment */ 1 /* other */\n",
0,
- ),
- array(
- array('q' => 'SELECT 1', 'f' => 'foo'),
+ ],
+ [
+ [
+ 'q' => 'SELECT 1',
+ 'f' => 'foo',
+ ],
"ERROR: Invalid value for format!\n",
1,
- ),
- array(
- array('q' => 'SELECT 1', 'f' => 'html'),
+ ],
+ [
+ [
+ 'q' => 'SELECT 1',
+ 'f' => 'html',
+ ],
'<span class="sql-reserved">SELECT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-number">1</span>' . "\n",
0,
- ),
- array(
- array('h' => true),
+ ],
+ [
+ ['h' => true],
'Usage: highlight-query --query SQL [--format html|cli|text]' . "\n",
0,
- ),
- array(
- array(),
+ ],
+ [
+ [],
'ERROR: Missing parameters!' . "\n" .
'Usage: highlight-query --query SQL [--format html|cli|text]' . "\n",
1,
- ),
- array(
+ ],
+ [
false,
'',
1,
- ),
- );
+ ],
+ ];
}
/**
@@ -106,41 +115,41 @@ class CLITest extends TestCase
public function lintParams()
{
- return array(
- array(
- array('q' => 'SELECT 1'),
+ return [
+ [
+ ['q' => 'SELECT 1'],
'',
0,
- ),
- array(
- array('query' => 'SELECT 1'),
+ ],
+ [
+ ['query' => 'SELECT 1'],
'',
0,
- ),
- array(
- array('q' => 'SELECT SELECT'),
+ ],
+ [
+ ['q' => 'SELECT SELECT'],
'#1: An expression was expected. (near "SELECT" at position 7)' . "\n" .
'#2: This type of clause was previously parsed. (near "SELECT" at position 7)' . "\n" .
'#3: An expression was expected. (near "" at position 0)' . "\n",
10,
- ),
- array(
- array('h' => true),
+ ],
+ [
+ ['h' => true],
'Usage: lint-query --query SQL' . "\n",
0,
- ),
- array(
- array(),
+ ],
+ [
+ [],
'ERROR: Missing parameters!' . "\n" .
'Usage: lint-query --query SQL' . "\n",
1,
- ),
- array(
+ ],
+ [
false,
'',
1,
- ),
- );
+ ],
+ ];
}
/**
@@ -166,33 +175,33 @@ class CLITest extends TestCase
. "[TOKEN 3]\nType = 9\nFlags = 0\nValue = NULL\nToken = NULL\n\n"
);
- return array(
- array(
- array('q' => 'SELECT 1'),
+ return [
+ [
+ ['q' => 'SELECT 1'],
$result,
0,
- ),
- array(
- array('query' => 'SELECT 1'),
+ ],
+ [
+ ['query' => 'SELECT 1'],
$result,
0,
- ),
- array(
- array('h' => true),
+ ],
+ [
+ ['h' => true],
'Usage: tokenize-query --query SQL' . "\n",
0,
- ),
- array(
- array(),
+ ],
+ [
+ [],
'ERROR: Missing parameters!' . "\n" .
'Usage: tokenize-query --query SQL' . "\n",
1,
- ),
- array(
+ ],
+ [
false,
'',
1,
- ),
- );
+ ],
+ ];
}
}
diff --git a/tests/Utils/ErrorTest.php b/tests/Utils/ErrorTest.php
index 7a62e46..d7d1393 100644
--- a/tests/Utils/ErrorTest.php
+++ b/tests/Utils/ErrorTest.php
@@ -14,19 +14,29 @@ class ErrorTest extends TestCase
$lexer = new Lexer('SELECT * FROM db..tbl $');
$parser = new Parser($lexer->list);
$this->assertEquals(
- array(
- array('Unexpected character.', 0, '$', 22),
- array('Unexpected dot.', 0, '.', 17),
- ),
- Error::get(array($lexer, $parser))
+ [
+ [
+ 'Unexpected character.',
+ 0,
+ '$',
+ 22,
+ ],
+ [
+ 'Unexpected dot.',
+ 0,
+ '.',
+ 17,
+ ],
+ ],
+ Error::get([$lexer, $parser])
);
}
public function testFormat()
{
$this->assertEquals(
- array('#1: error msg (near "token" at position 100)'),
- Error::format(array(array('error msg', 42, 'token', 100)))
+ ['#1: error msg (near "token" at position 100)'],
+ Error::format([['error msg', 42, 'token', 100]])
);
}
}
diff --git a/tests/Utils/FormatterTest.php b/tests/Utils/FormatterTest.php
index d39ff9e..152359e 100644
--- a/tests/Utils/FormatterTest.php
+++ b/tests/Utils/FormatterTest.php
@@ -18,37 +18,37 @@ class FormatTest extends TestCase
{
$formatter = $this->getMockBuilder('PhpMyAdmin\SqlParser\Utils\Formatter')
->disableOriginalConstructor()
- ->setMethods(array('getDefaultOptions', 'getDefaultFormats'))
+ ->setMethods(['getDefaultOptions', 'getDefaultFormats'])
->getMock();
$formatter->expects($this->once())
->method('getDefaultOptions')
- ->willReturn(array(
+ ->willReturn([
'type' => 'text',
'line_ending' => null,
'indentation' => null,
'clause_newline' => null,
'parts_newline' => null,
- ));
+ ]);
$formatter->expects($this->once())
->method('getDefaultFormats')
->willReturn($default);
- $expectedOptions = array(
+ $expectedOptions = [
'type' => 'test-type',
'line_ending' => '<br>',
'indentation' => ' ',
'clause_newline' => null,
'parts_newline' => 0,
'formats' => $expected,
- );
+ ];
- $overridingOptions = array(
+ $overridingOptions = [
'type' => 'test-type',
'line_ending' => '<br>',
'formats' => $overriding,
- );
+ ];
$reflectionMethod = new \ReflectionMethod($formatter, 'getMergedOptions');
$reflectionMethod->setAccessible(true);
@@ -58,179 +58,178 @@ class FormatTest extends TestCase
public function mergeFormats()
{
// array($default[], $overriding[], $expected[])
- return array(
- 'empty formats' => array(
- 'default' => array(
- array(
+ return [
+ 'empty formats' => [
+ 'default' => [
+ [
'type' => 0,
'flags' => 0,
'html' => '',
'cli' => '',
'function' => '',
- ),
- ),
- 'overriding' => array(
- array(
- ),
- ),
- 'expected' => array(
- array(
+ ],
+ ],
+ 'overriding' => [
+ [],
+ ],
+ 'expected' => [
+ [
'type' => 0,
'flags' => 0,
'html' => '',
'cli' => '',
'function' => '',
- ),
- ),
- ),
- 'no flags' => array(
- 'default' => array(
- array(
+ ],
+ ],
+ ],
+ 'no flags' => [
+ 'default' => [
+ [
'type' => 0,
'flags' => 0,
'html' => 'html',
'cli' => 'cli',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 1,
'html' => 'html',
'cli' => 'cli',
- ),
- ),
- 'overriding' => array(
- array(
+ ],
+ ],
+ 'overriding' => [
+ [
'type' => 0,
'html' => 'new html',
'cli' => 'new cli',
- ),
- ),
- 'expected' => array(
- array(
+ ],
+ ],
+ 'expected' => [
+ [
'type' => 0,
'flags' => 0,
'html' => 'new html',
'cli' => 'new cli',
'function' => '',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 1,
'html' => 'html',
'cli' => 'cli',
- ),
- ),
- ),
- 'with flags' => array(
- 'default' => array(
- array(
+ ],
+ ],
+ ],
+ 'with flags' => [
+ 'default' => [
+ [
'type' => -1,
'flags' => 0,
'html' => 'html',
'cli' => 'cli',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 0,
'html' => 'html',
'cli' => 'cli',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 1,
'html' => 'html',
'cli' => 'cli',
- ),
- ),
- 'overriding' => array(
- array(
+ ],
+ ],
+ 'overriding' => [
+ [
'type' => 0,
'flags' => 0,
'html' => 'new html',
'cli' => 'new cli',
- ),
- ),
- 'expected' => array(
- array(
+ ],
+ ],
+ 'expected' => [
+ [
'type' => -1,
'flags' => 0,
'html' => 'html',
'cli' => 'cli',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 0,
'html' => 'new html',
'cli' => 'new cli',
'function' => '',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 1,
'html' => 'html',
'cli' => 'cli',
- ),
- ),
- ),
- 'with extra formats' => array(
- 'default' => array(
- array(
+ ],
+ ],
+ ],
+ 'with extra formats' => [
+ 'default' => [
+ [
'type' => 0,
'flags' => 0,
'html' => 'html',
'cli' => 'cli',
- ),
- ),
- 'overriding' => array(
- array(
+ ],
+ ],
+ 'overriding' => [
+ [
'type' => 0,
'flags' => 1,
'html' => 'new html',
'cli' => 'new cli',
- ),
- array(
+ ],
+ [
'type' => 1,
'html' => 'new html',
'cli' => 'new cli',
- ),
- array(
+ ],
+ [
'type' => 1,
'flags' => 1,
'html' => 'new html',
'cli' => 'new cli',
- ),
- ),
- 'expected' => array(
- array(
+ ],
+ ],
+ 'expected' => [
+ [
'type' => 0,
'flags' => 0,
'html' => 'html',
'cli' => 'cli',
- ),
- array(
+ ],
+ [
'type' => 0,
'flags' => 1,
'html' => 'new html',
'cli' => 'new cli',
'function' => '',
- ),
- array(
+ ],
+ [
'type' => 1,
'flags' => 0,
'html' => 'new html',
'cli' => 'new cli',
'function' => '',
- ),
- array(
+ ],
+ [
'type' => 1,
'flags' => 1,
'html' => 'new html',
'cli' => 'new cli',
'function' => '',
- ),
- ),
- ),
- );
+ ],
+ ],
+ ],
+ ];
}
/**
@@ -241,28 +240,28 @@ class FormatTest extends TestCase
* @param mixed $cli
* @param mixed $html
*/
- public function testFormat($query, $text, $cli, $html, array $options = array())
+ public function testFormat($query, $text, $cli, $html, array $options = [])
{
// Test TEXT format
- $this->assertEquals($text, Formatter::format($query, array('type' => 'text') + $options), 'Text formatting failed.');
+ $this->assertEquals($text, Formatter::format($query, ['type' => 'text'] + $options), 'Text formatting failed.');
// Test CLI format
- $this->assertEquals($cli, Formatter::format($query, array('type' => 'cli') + $options), 'CLI formatting failed.');
+ $this->assertEquals($cli, Formatter::format($query, ['type' => 'cli'] + $options), 'CLI formatting failed.');
// Test HTML format
- $this->assertEquals($html, Formatter::format($query, array('type' => 'html') + $options), 'HTML formatting failed.');
+ $this->assertEquals($html, Formatter::format($query, ['type' => 'html'] + $options), 'HTML formatting failed.');
}
public function formatQueries()
{
- return array(
- 'empty' => array(
+ return [
+ 'empty' => [
'query' => '',
'text' => '',
'cli' => "\x1b[0m",
'html' => '',
- ),
- 'minimal' => array(
+ ],
+ 'minimal' => [
'query' => 'select 1',
'text' => 'SELECT' . "\n" .
' 1',
@@ -270,8 +269,8 @@ class FormatTest extends TestCase
" \x1b[92m1" . "\x1b[0m",
'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-number">1</span>',
- ),
- 'simply' => array(
+ ],
+ 'simply' => [
'query' => 'select * from tbl where 1',
'text' => 'SELECT' . "\n" .
' *' . "\n" .
@@ -291,8 +290,8 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;tbl' . '<br/>' .
'<span class="sql-reserved">WHERE</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-number">1</span>',
- ),
- 'typical' => array(
+ ],
+ 'typical' => [
'query' => 'SELECT id, if(id=1,"Si","No") from `tbl` where id = 0 or id = 1 group by id order by id desc limit 1 offset 0',
'text' => 'SELECT' . "\n" .
' id,' . "\n" .
@@ -333,8 +332,8 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;id' . '<br/>' .
'<span class="sql-reserved">DESC</span>' . '<br/>' .
'<span class="sql-reserved">LIMIT</span> <span class="sql-number">1</span> <span class="sql-keyword">OFFSET</span> <span class="sql-number">0</span>',
- ),
- 'comments' => array(
+ ],
+ 'comments' => [
'query' => 'select /* Comment */ *' . "\n" .
'from tbl # Comment' . "\n" .
'where 1 -- Comment',
@@ -356,8 +355,8 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;tbl <span class="sql-comment"># Comment</span>' . '<br/>' .
'<span class="sql-reserved">WHERE</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-number">1</span> <span class="sql-comment">-- Comment</span>',
- ),
- 'strip comments' => array(
+ ],
+ 'strip comments' => [
'query' => 'select /* Comment */ *' . "\n" .
'from tbl # Comment' . "\n" .
'where 1 -- Comment',
@@ -379,11 +378,11 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;tbl' . '<br/>' .
'<span class="sql-reserved">WHERE</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-number">1</span>',
- 'options' => array(
+ 'options' => [
'remove_comments' => true,
- ),
- ),
- 'keywords' => array(
+ ],
+ ],
+ 'keywords' => [
'query' => 'select hex("1")',
'text' => 'SELECT' . "\n" .
' HEX("1")',
@@ -391,8 +390,8 @@ class FormatTest extends TestCase
" \x1b[95mHEX\x1b[39m(\x1b[91m\"1\"\x1b[39m)" . "\x1b[0m",
'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-keyword">HEX</span>(<span class="sql-string">"1"</span>)',
- ),
- 'distinct count' => array(
+ ],
+ 'distinct count' => [
'query' => 'select distinct count(*)',
'text' => 'SELECT DISTINCT' . "\n" .
' COUNT(*)',
@@ -400,8 +399,8 @@ class FormatTest extends TestCase
" \x1b[95mCOUNT\x1b[39m(*)" . "\x1b[0m",
'html' => '<span class="sql-reserved">SELECT</span> <span class="sql-reserved">DISTINCT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-keyword">COUNT</span>(*)',
- ),
- 'create procedure' => array(
+ ],
+ 'create procedure' => [
'query' => 'create procedure test_procedure() begin from tbl select *; end',
'text' => 'CREATE PROCEDURE test_procedure()' . "\n" .
'BEGIN' . "\n" .
@@ -424,8 +423,8 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-reserved">SELECT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*;' . '<br/>' .
'<span class="sql-keyword">END</span>',
- ),
- 'insert' => array(
+ ],
+ 'insert' => [
'query' => 'insert into foo values (0, 0, 0), (1, 1, 1)',
'text' => 'INSERT INTO foo' . "\n" .
'VALUES(0, 0, 0),(1, 1, 1)',
@@ -433,8 +432,8 @@ class FormatTest extends TestCase
"\x1b[35mVALUES\x1b[39m(\x1b[92m0\x1b[39m, \x1b[92m0\x1b[39m, \x1b[92m0\x1b[39m),(\x1b[92m1\x1b[39m, \x1b[92m1\x1b[39m, \x1b[92m1\x1b[39m)" . "\x1b[0m",
'html' => '<span class="sql-reserved">INSERT</span> <span class="sql-reserved">INTO</span> foo' . '<br/>' .
'<span class="sql-reserved">VALUES</span>(<span class="sql-number">0</span>, <span class="sql-number">0</span>, <span class="sql-number">0</span>),(<span class="sql-number">1</span>, <span class="sql-number">1</span>, <span class="sql-number">1</span>)',
- ),
- 'string as alias' => array(
+ ],
+ 'string as alias' => [
'query' => 'select "Text" as bar',
'text' => 'SELECT' . "\n" .
' "Text" AS bar',
@@ -442,8 +441,8 @@ class FormatTest extends TestCase
" \x1b[91m\"Text\" \x1b[35mAS \x1b[39mbar" . "\x1b[0m",
'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-string">"Text"</span> <span class="sql-reserved">AS</span> bar',
- ),
- 'escape cli' => array(
+ ],
+ 'escape cli' => [
'query' => "select 'text\x1b[33mcolor-inj'",
'text' => 'SELECT' . "\n" .
" 'text\x1B[33mcolor-inj'",
@@ -451,8 +450,8 @@ class FormatTest extends TestCase
" \x1b[91m'text\\x1B[33mcolor-inj'" . "\x1b[0m",
'html' => '<span class="sql-reserved">SELECT</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-string">\'text' . "\x1b[33m" . 'color-inj\'</span>',
- ),
- 'escape html' => array(
+ ],
+ 'escape html' => [
'query' => "select '<s>xss' from `<s>xss` , <s>nxss /*s<s>xss*/",
'text' => 'SELECT' . "\n" .
' \'<s>xss\'' . "\n" .
@@ -468,8 +467,8 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-string">\'&lt;s&gt;xss\'</span>' . '<br/>' .
'<span class="sql-reserved">FROM</span>' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-variable">`&lt;s&gt;xss`</span>,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&lt; s &gt; nxss <span class="sql-comment">/*s&lt;s&gt;xss*/</span>',
- ),
- 'create table' => array(
+ ],
+ 'create table' => [
'query' => 'create table if not exists `pma__bookmark` (' . "\n" .
'`id` int(11) not null auto_increment,' . "\n" .
'`dbase` varchar(255) not null default "",' . "\n" .
@@ -498,14 +497,14 @@ class FormatTest extends TestCase
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-variable">`label`</span> <span class="sql-reserved">VARCHAR</span>(<span class="sql-number">255</span>) <span class="sql-reserved">COLLATE</span> utf8_general_ci <span class="sql-reserved">NOT NULL</span> <span class="sql-reserved">DEFAULT</span> <span class="sql-string">""</span>,' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-variable">`query`</span> <span class="sql-keyword">TEXT</span> <span class="sql-reserved">NOT NULL</span>,' . '<br/>' .
'&nbsp;&nbsp;&nbsp;&nbsp;<span class="sql-reserved">PRIMARY KEY</span>(<span class="sql-variable">`id`</span>)',
- ),
- 'join' => array(
+ ],
+ 'join' => [
'query' => 'join tbl2 on c1=c2',
'text' => 'JOIN tbl2 ON c1 = c2',
'cli' => "\x1b[35mJOIN \x1b[39mtbl2 \x1b[35mON \x1b[39mc1 = c2" .
"\x1b[0m",
'html' => '<span class="sql-reserved">JOIN</span> tbl2 <span class="sql-reserved">ON</span> c1 = c2',
- ),
- );
+ ],
+ ];
}
}
diff --git a/tests/Utils/MiscTest.php b/tests/Utils/MiscTest.php
index c6b03a2..01a2926 100644
--- a/tests/Utils/MiscTest.php
+++ b/tests/Utils/MiscTest.php
@@ -24,104 +24,104 @@ class MiscTest extends TestCase
public function getAliasesProvider()
{
- return array(
- array(
+ return [
+ [
'select * from (select 1) tbl',
'mydb',
- array(),
- ),
- array(
+ [],
+ ],
+ [
'select i.name as `n`,abcdef gh from qwerty i',
'mydb',
- array(
- 'mydb' => array(
+ [
+ 'mydb' => [
'alias' => null,
- 'tables' => array(
- 'qwerty' => array(
+ 'tables' => [
+ 'qwerty' => [
'alias' => 'i',
- 'columns' => array(
+ 'columns' => [
'name' => 'n',
'abcdef' => 'gh',
- ),
- ),
- ),
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ [
'select film_id id,title from film',
'sakila',
- array(
- 'sakila' => array(
+ [
+ 'sakila' => [
'alias' => null,
- 'tables' => array(
- 'film' => array(
+ 'tables' => [
+ 'film' => [
'alias' => null,
- 'columns' => array(
+ 'columns' => [
'film_id' => 'id',
- ),
- ),
- ),
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ [
'select `sakila`.`A`.`actor_id` as aid,`F`.`film_id` `fid`,'
. 'last_update updated from `sakila`.actor A join `film_actor` as '
. '`F` on F.actor_id = A.`actor_id`',
'sakila',
- array(
- 'sakila' => array(
+ [
+ 'sakila' => [
'alias' => null,
- 'tables' => array(
- 'film_actor' => array(
+ 'tables' => [
+ 'film_actor' => [
'alias' => 'F',
- 'columns' => array(
+ 'columns' => [
'film_id' => 'fid',
'last_update' => 'updated',
- ),
- ),
- 'actor' => array(
+ ],
+ ],
+ 'actor' => [
'alias' => 'A',
- 'columns' => array(
+ 'columns' => [
'actor_id' => 'aid',
'last_update' => 'updated',
- ),
- ),
- ),
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ [
'SELECT film_id FROM (SELECT * FROM film) as f;',
'sakila',
- array(),
- ),
- array(
+ [],
+ ],
+ [
'',
null,
- array(),
- ),
- array(
+ [],
+ ],
+ [
'SELECT 1',
null,
- array(),
- ),
- array(
+ [],
+ ],
+ [
'SELECT * FROM orders AS ord WHERE 1',
'db',
- array(
- 'db' => array(
+ [
+ 'db' => [
'alias' => null,
- 'tables' => array(
- 'orders' => array(
+ 'tables' => [
+ 'orders' => [
'alias' => 'ord',
- 'columns' => array(),
- ),
- ),
- ),
- ),
- ),
- );
+ 'columns' => [],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ];
}
}
diff --git a/tests/Utils/QueryTest.php b/tests/Utils/QueryTest.php
index 8cb9f85..6991870 100644
--- a/tests/Utils/QueryTest.php
+++ b/tests/Utils/QueryTest.php
@@ -25,257 +25,257 @@ class QueryTest extends TestCase
public function testGetFlagsProvider()
{
- return array(
- array(
+ return [
+ [
'ALTER TABLE DROP col',
- array(
+ [
'reload' => true,
'querytype' => 'ALTER',
- ),
- ),
- array(
+ ],
+ ],
+ [
'CALL test()',
- array(
+ [
'is_procedure' => true,
'querytype' => 'CALL',
- ),
- ),
- array(
+ ],
+ ],
+ [
'CREATE TABLE tbl (id INT)',
- array(
+ [
'reload' => true,
'querytype' => 'CREATE',
- ),
- ),
- array(
+ ],
+ ],
+ [
'CHECK TABLE tbl',
- array(
+ [
'is_maint' => true,
'querytype' => 'CHECK',
- ),
- ),
- array(
+ ],
+ ],
+ [
'DELETE FROM tbl',
- array(
+ [
'is_affected' => true,
'is_delete' => true,
'querytype' => 'DELETE',
- ),
- ),
- array(
+ ],
+ ],
+ [
'DROP VIEW v',
- array(
+ [
'reload' => true,
'querytype' => 'DROP',
- ),
- ),
- array(
+ ],
+ ],
+ [
'DROP DATABASE db',
- array(
+ [
'drop_database' => true,
'reload' => true,
'querytype' => 'DROP',
- ),
- ),
- array(
+ ],
+ ],
+ [
'EXPLAIN tbl',
- array(
+ [
'is_explain' => true,
'querytype' => 'EXPLAIN',
- ),
- ),
- array(
+ ],
+ ],
+ [
'LOAD DATA INFILE \'/tmp/test.txt\' INTO TABLE test',
- array(
+ [
'is_affected' => true,
'is_insert' => true,
'querytype' => 'LOAD',
- ),
- ),
- array(
+ ],
+ ],
+ [
'INSERT INTO tbl VALUES (1)',
- array(
+ [
'is_affected' => true,
'is_insert' => true,
'querytype' => 'INSERT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'REPLACE INTO tbl VALUES (2)',
- array(
+ [
'is_affected' => true,
'is_replace' => true,
'is_insert' => true,
'querytype' => 'REPLACE',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT 1',
- array(
+ [
'is_select' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT * FROM tbl',
- array(
+ [
'is_select' => true,
'select_from' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT DISTINCT * FROM tbl LIMIT 0, 10 ORDER BY id',
- array(
+ [
'distinct' => true,
'is_select' => true,
'select_from' => true,
'limit' => true,
'order' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT * FROM actor GROUP BY actor_id',
- array(
+ [
'is_group' => true,
'is_select' => true,
'select_from' => true,
'group' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT col1, col2 FROM table1 PROCEDURE ANALYSE(10, 2000);',
- array(
+ [
'is_analyse' => true,
'is_select' => true,
'select_from' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT * FROM tbl INTO OUTFILE "/tmp/export.txt"',
- array(
+ [
'is_export' => true,
'is_select' => true,
'select_from' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT COUNT(id), SUM(id) FROM tbl',
- array(
+ [
'is_count' => true,
'is_func' => true,
'is_select' => true,
'select_from' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT (SELECT "foo")',
- array(
+ [
'is_select' => true,
'is_subquery' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT * FROM customer HAVING store_id = 2;',
- array(
+ [
'is_select' => true,
'select_from' => true,
'is_group' => true,
'having' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT * FROM table1 INNER JOIN table2 ON table1.id=table2.id;',
- array(
+ [
'is_select' => true,
'select_from' => true,
'join' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SHOW CREATE TABLE tbl',
- array(
+ [
'is_show' => true,
'querytype' => 'SHOW',
- ),
- ),
- array(
+ ],
+ ],
+ [
'UPDATE tbl SET id = 1',
- array(
+ [
'is_affected' => true,
'querytype' => 'UPDATE',
- ),
- ),
- array(
+ ],
+ ],
+ [
'ANALYZE TABLE tbl',
- array(
+ [
'is_maint' => true,
'querytype' => 'ANALYZE',
- ),
- ),
- array(
+ ],
+ ],
+ [
'CHECKSUM TABLE tbl',
- array(
+ [
'is_maint' => true,
'querytype' => 'CHECKSUM',
- ),
- ),
- array(
+ ],
+ ],
+ [
'OPTIMIZE TABLE tbl',
- array(
+ [
'is_maint' => true,
'querytype' => 'OPTIMIZE',
- ),
- ),
- array(
+ ],
+ ],
+ [
'REPAIR TABLE tbl',
- array(
+ [
'is_maint' => true,
'querytype' => 'REPAIR',
- ),
- ),
- array(
+ ],
+ ],
+ [
'(SELECT a FROM t1 WHERE a=10 AND B=1 ORDER BY a LIMIT 10) ' .
'UNION ' .
'(SELECT a FROM t2 WHERE a=11 AND B=2 ORDER BY a LIMIT 10);',
- array(
+ [
'is_select' => true,
'select_from' => true,
'limit' => true,
'order' => true,
'union' => true,
'querytype' => 'SELECT',
- ),
- ),
- array(
+ ],
+ ],
+ [
'SELECT * FROM orders AS ord WHERE 1',
- array(
+ [
'querytype' => 'SELECT',
'is_select' => true,
'select_from' => true,
- ),
- ),
- array(
+ ],
+ ],
+ [
'SET NAMES \'latin\'',
- array(
+ [
'querytype' => 'SET',
- ),
- ),
- );
+ ],
+ ],
+ ];
}
public function testGetAll()
{
$this->assertEquals(
- array(
+ [
'distinct' => false,
'drop_database' => false,
'group' => false,
@@ -303,7 +303,7 @@ class QueryTest extends TestCase
'reload' => false,
'select_from' => false,
'union' => false,
- ),
+ ],
Query::getAll('')
);
@@ -313,15 +313,21 @@ class QueryTest extends TestCase
$this->assertEquals(
array_merge(
Query::getFlags($parser->statements[0], true),
- array(
+ [
'parser' => $parser,
'statement' => $parser->statements[0],
- 'select_expr' => array('*'),
- 'select_tables' => array(
- array('actor', null),
- array('film', 'sakila2'),
- ),
- )
+ 'select_expr' => ['*'],
+ 'select_tables' => [
+ [
+ 'actor',
+ null,
+ ],
+ [
+ 'film',
+ 'sakila2',
+ ],
+ ],
+ ]
),
Query::getAll($query)
);
@@ -331,15 +337,21 @@ class QueryTest extends TestCase
$this->assertEquals(
array_merge(
Query::getFlags($parser->statements[0], true),
- array(
+ [
'parser' => $parser,
'statement' => $parser->statements[0],
- 'select_expr' => array('*'),
- 'select_tables' => array(
- array('actor', 'sakila'),
- array('film', null),
- ),
- )
+ 'select_expr' => ['*'],
+ 'select_tables' => [
+ [
+ 'actor',
+ 'sakila',
+ ],
+ [
+ 'film',
+ null,
+ ],
+ ],
+ ]
),
Query::getAll($query)
);
@@ -349,14 +361,17 @@ class QueryTest extends TestCase
$this->assertEquals(
array_merge(
Query::getFlags($parser->statements[0], true),
- array(
+ [
'parser' => $parser,
'statement' => $parser->statements[0],
- 'select_expr' => array(),
- 'select_tables' => array(
- array('actor', 'sakila'),
- ),
- )
+ 'select_expr' => [],
+ 'select_tables' => [
+ [
+ 'actor',
+ 'sakila',
+ ],
+ ],
+ ]
),
Query::getAll($query)
);
@@ -366,14 +381,14 @@ class QueryTest extends TestCase
$this->assertEquals(
array_merge(
Query::getFlags($parser->statements[0], true),
- array(
+ [
'parser' => $parser,
'statement' => $parser->statements[0],
- 'select_expr' => array(
+ 'select_expr' => [
'CASE WHEN 2 IS NULL THEN "this is true" ELSE "this is false" END',
- ),
- 'select_tables' => array(),
- )
+ ],
+ 'select_tables' => [],
+ ]
),
Query::getAll($query)
);
@@ -396,36 +411,42 @@ class QueryTest extends TestCase
public function testGetTablesProvider()
{
- return array(
- array(
+ return [
+ [
'INSERT INTO tbl(`id`, `name`) VALUES (1, "Name")',
- array('`tbl`'),
- ),
- array(
+ ['`tbl`'],
+ ],
+ [
'UPDATE tbl SET id = 0',
- array('`tbl`'),
- ),
- array(
+ ['`tbl`'],
+ ],
+ [
'DELETE FROM tbl WHERE id < 10',
- array('`tbl`'),
- ),
- array(
+ ['`tbl`'],
+ ],
+ [
'TRUNCATE tbl',
- array('`tbl`'),
- ),
- array(
+ ['`tbl`'],
+ ],
+ [
'DROP VIEW v',
- array(),
- ),
- array(
+ [],
+ ],
+ [
'DROP TABLE tbl1, tbl2',
- array('`tbl1`', '`tbl2`'),
- ),
- array(
+ [
+ '`tbl1`',
+ '`tbl2`',
+ ],
+ ],
+ [
'RENAME TABLE a TO b, c TO d',
- array('`a`', '`c`'),
- ),
- );
+ [
+ '`a`',
+ '`c`',
+ ],
+ ],
+ ];
}
public function testGetClause()
@@ -494,7 +515,7 @@ class QueryTest extends TestCase
public function testReplaceClauses()
{
- $this->assertEquals('', Query::replaceClauses(null, null, array()));
+ $this->assertEquals('', Query::replaceClauses(null, null, []));
$parser = new Parser('SELECT *, (SELECT 1) FROM film LIMIT 0, 10;');
$this->assertEquals(
@@ -502,9 +523,12 @@ class QueryTest extends TestCase
Query::replaceClauses(
$parser->statements[0],
$parser->list,
- array(
- array('WHERE', 'WHERE film_id > 0'),
- )
+ [
+ [
+ 'WHERE',
+ 'WHERE film_id > 0',
+ ],
+ ]
)
);
@@ -525,11 +549,20 @@ class QueryTest extends TestCase
Query::replaceClauses(
$parser->statements[0],
$parser->list,
- array(
- array('FROM', 'FROM city AS c'),
- array('WHERE', ''),
- array('LIMIT', 'LIMIT 0, 10'),
- )
+ [
+ [
+ 'FROM',
+ 'FROM city AS c',
+ ],
+ [
+ 'WHERE',
+ '',
+ ],
+ [
+ 'LIMIT',
+ 'LIMIT 0, 10',
+ ],
+ ]
)
);
}
diff --git a/tests/Utils/RoutineTest.php b/tests/Utils/RoutineTest.php
index 3a6ba55..9a7c4ca 100644
--- a/tests/Utils/RoutineTest.php
+++ b/tests/Utils/RoutineTest.php
@@ -20,33 +20,88 @@ class RoutineTest extends TestCase
public function getReturnTypeProvider()
{
- return array(
- array('', array('', '', '', '', '')),
- array('TEXT', array('', '', 'TEXT', '', '')),
- array('INT(20)', array('', '', 'INT', '20', '')),
- array(
+ return [
+ [
+ '',
+ [
+ '',
+ '',
+ '',
+ '',
+ '',
+ ],
+ ],
+ [
+ 'TEXT',
+ [
+ '',
+ '',
+ 'TEXT',
+ '',
+ '',
+ ],
+ ],
+ [
+ 'INT(20)',
+ [
+ '',
+ '',
+ 'INT',
+ '20',
+ '',
+ ],
+ ],
+ [
'INT UNSIGNED',
- array('', '', 'INT', '', 'UNSIGNED'),
- ),
- array(
+ [
+ '',
+ '',
+ 'INT',
+ '',
+ 'UNSIGNED',
+ ],
+ ],
+ [
'VARCHAR(1) CHARSET utf8',
- array('', '', 'VARCHAR', '1', 'utf8'),
- ),
- array(
+ [
+ '',
+ '',
+ 'VARCHAR',
+ '1',
+ 'utf8',
+ ],
+ ],
+ [
'ENUM(\'a\', \'b\') CHARSET latin1',
- array('', '', 'ENUM', '\'a\',\'b\'', 'latin1'),
- ),
- array(
+ [
+ '',
+ '',
+ 'ENUM',
+ '\'a\',\'b\'',
+ 'latin1',
+ ],
+ ],
+ [
'DECIMAL(5,2) UNSIGNED ZEROFILL',
- array('', '', 'DECIMAL', '5,2', 'UNSIGNED ZEROFILL'),
- ),
- array(
+ [
+ '',
+ '',
+ 'DECIMAL',
+ '5,2',
+ 'UNSIGNED ZEROFILL',
+ ],
+ ],
+ [
'SET(\'test\'\'esc"\', \'more\\\'esc\')',
- array(
- '', '', 'SET', '\'test\'\'esc"\',\'more\\\'esc\'', '',
- ),
- ),
- );
+ [
+ '',
+ '',
+ 'SET',
+ '\'test\'\'esc"\',\'more\\\'esc\'',
+ '',
+ ],
+ ],
+ ];
}
/**
@@ -61,33 +116,88 @@ class RoutineTest extends TestCase
public function getParameterProvider()
{
- return array(
- array('', array('', '', '', '', '')),
- array('`foo` TEXT', array('', 'foo', 'TEXT', '', '')),
- array('`foo` INT(20)', array('', 'foo', 'INT', '20', '')),
- array(
+ return [
+ [
+ '',
+ [
+ '',
+ '',
+ '',
+ '',
+ '',
+ ],
+ ],
+ [
+ '`foo` TEXT',
+ [
+ '',
+ 'foo',
+ 'TEXT',
+ '',
+ '',
+ ],
+ ],
+ [
+ '`foo` INT(20)',
+ [
+ '',
+ 'foo',
+ 'INT',
+ '20',
+ '',
+ ],
+ ],
+ [
'IN `fo``fo` INT UNSIGNED',
- array('IN', 'fo`fo', 'INT', '', 'UNSIGNED'),
- ),
- array(
+ [
+ 'IN',
+ 'fo`fo',
+ 'INT',
+ '',
+ 'UNSIGNED',
+ ],
+ ],
+ [
'OUT bar VARCHAR(1) CHARSET utf8',
- array('OUT', 'bar', 'VARCHAR', '1', 'utf8'),
- ),
- array(
+ [
+ 'OUT',
+ 'bar',
+ 'VARCHAR',
+ '1',
+ 'utf8',
+ ],
+ ],
+ [
'`"baz\'\'` ENUM(\'a\', \'b\') CHARSET latin1',
- array('', '"baz\'\'', 'ENUM', '\'a\',\'b\'', 'latin1'),
- ),
- array(
+ [
+ '',
+ '"baz\'\'',
+ 'ENUM',
+ '\'a\',\'b\'',
+ 'latin1',
+ ],
+ ],
+ [
'INOUT `foo` DECIMAL(5,2) UNSIGNED ZEROFILL',
- array('INOUT', 'foo', 'DECIMAL', '5,2', 'UNSIGNED ZEROFILL'),
- ),
- array(
+ [
+ 'INOUT',
+ 'foo',
+ 'DECIMAL',
+ '5,2',
+ 'UNSIGNED ZEROFILL',
+ ],
+ ],
+ [
'`foo``s func` SET(\'test\'\'esc"\', \'more\\\'esc\')',
- array(
- '', 'foo`s func', 'SET', '\'test\'\'esc"\',\'more\\\'esc\'', '',
- ),
- ),
- );
+ [
+ '',
+ 'foo`s func',
+ 'SET',
+ '\'test\'\'esc"\',\'more\\\'esc\'',
+ '',
+ ],
+ ],
+ ];
}
/**
@@ -103,98 +213,98 @@ class RoutineTest extends TestCase
public function getParametersProvider()
{
- return array(
- array(
+ return [
+ [
'CREATE PROCEDURE `foo`() SET @A=0',
- array(
+ [
'num' => 0,
- 'dir' => array(),
- 'name' => array(),
- 'type' => array(),
- 'length' => array(),
- 'length_arr' => array(),
- 'opts' => array(),
- ),
- ),
- array(
+ 'dir' => [],
+ 'name' => [],
+ 'type' => [],
+ 'length' => [],
+ 'length_arr' => [],
+ 'opts' => [],
+ ],
+ ],
+ [
'CREATE DEFINER=`user\\`@`somehost``(` FUNCTION `foo```(`baz` INT) BEGIN SELECT NULL; END',
- array(
+ [
'num' => 1,
- 'dir' => array(
+ 'dir' => [
0 => '',
- ),
- 'name' => array(
+ ],
+ 'name' => [
0 => 'baz',
- ),
- 'type' => array(
+ ],
+ 'type' => [
0 => 'INT',
- ),
- 'length' => array(
+ ],
+ 'length' => [
0 => '',
- ),
- 'length_arr' => array(
- 0 => array(),
- ),
- 'opts' => array(
+ ],
+ 'length_arr' => [
+ 0 => [],
+ ],
+ 'opts' => [
0 => '',
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ [
'CREATE PROCEDURE `foo`(IN `baz\\)` INT(25) zerofill unsigned) BEGIN SELECT NULL; END',
- array(
+ [
'num' => 1,
- 'dir' => array(
+ 'dir' => [
0 => 'IN',
- ),
- 'name' => array(
+ ],
+ 'name' => [
0 => 'baz\\)',
- ),
- 'type' => array(
+ ],
+ 'type' => [
0 => 'INT',
- ),
- 'length' => array(
+ ],
+ 'length' => [
0 => '25',
- ),
- 'length_arr' => array(
- 0 => array('25'),
- ),
- 'opts' => array(
+ ],
+ 'length_arr' => [
+ 0 => ['25'],
+ ],
+ 'opts' => [
0 => 'UNSIGNED ZEROFILL',
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ [
'CREATE PROCEDURE `foo`(IN `baz\\` INT(001) zerofill, out bazz varchar(15) charset utf8) ' .
'BEGIN SELECT NULL; END',
- array(
+ [
'num' => 2,
- 'dir' => array(
+ 'dir' => [
0 => 'IN',
1 => 'OUT',
- ),
- 'name' => array(
+ ],
+ 'name' => [
0 => 'baz\\',
1 => 'bazz',
- ),
- 'type' => array(
+ ],
+ 'type' => [
0 => 'INT',
1 => 'VARCHAR',
- ),
- 'length' => array(
+ ],
+ 'length' => [
0 => '1',
1 => '15',
- ),
- 'length_arr' => array(
- 0 => array('1'),
- 1 => array('15'),
- ),
- 'opts' => array(
+ ],
+ 'length_arr' => [
+ 0 => ['1'],
+ 1 => ['15'],
+ ],
+ 'opts' => [
0 => 'ZEROFILL',
1 => 'utf8',
- ),
- ),
- ),
- );
+ ],
+ ],
+ ],
+ ];
}
}
diff --git a/tests/Utils/TableTest.php b/tests/Utils/TableTest.php
index ef21137..fe68100 100644
--- a/tests/Utils/TableTest.php
+++ b/tests/Utils/TableTest.php
@@ -21,12 +21,12 @@ class TableTest extends TestCase
public function getForeignKeysProvider()
{
- return array(
- array(
+ return [
+ [
'CREATE USER test',
- array(),
- ),
- array(
+ [],
+ ],
+ [
'CREATE TABLE `payment` (
`payment_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`customer_id` smallint(5) unsigned NOT NULL,
@@ -43,35 +43,35 @@ class TableTest extends TestCase
CONSTRAINT `fk_payment_rental` FOREIGN KEY (`rental_id`) REFERENCES `rental` (`rental_id`) ON DELETE SET NULL ON UPDATE CASCADE,
CONSTRAINT `fk_payment_staff` FOREIGN KEY (`staff_id`) REFERENCES `staff` (`staff_id`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=16050 DEFAULT CHARSET=utf8',
- array(
- array(
+ [
+ [
'constraint' => 'fk_payment_customer',
- 'index_list' => array('customer_id'),
+ 'index_list' => ['customer_id'],
'ref_db_name' => null,
'ref_table_name' => 'customer',
- 'ref_index_list' => array('customer_id'),
+ 'ref_index_list' => ['customer_id'],
'on_update' => 'CASCADE',
- ),
- array(
+ ],
+ [
'constraint' => 'fk_payment_rental',
- 'index_list' => array('rental_id'),
+ 'index_list' => ['rental_id'],
'ref_db_name' => null,
'ref_table_name' => 'rental',
- 'ref_index_list' => array('rental_id'),
+ 'ref_index_list' => ['rental_id'],
'on_delete' => 'SET_NULL',
'on_update' => 'CASCADE',
- ),
- array(
+ ],
+ [
'constraint' => 'fk_payment_staff',
- 'index_list' => array('staff_id'),
+ 'index_list' => ['staff_id'],
'ref_db_name' => null,
'ref_table_name' => 'staff',
- 'ref_index_list' => array('staff_id'),
+ 'ref_index_list' => ['staff_id'],
'on_update' => 'CASCADE',
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ [
'CREATE TABLE `actor` (
`actor_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`first_name` varchar(45) NOT NULL,
@@ -80,9 +80,9 @@ class TableTest extends TestCase
PRIMARY KEY (`actor_id`),
KEY `idx_actor_last_name` (`last_name`)
) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8',
- array(),
- ),
- array(
+ [],
+ ],
+ [
'CREATE TABLE `address` (
`address_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`address` varchar(50) NOT NULL,
@@ -96,18 +96,18 @@ class TableTest extends TestCase
KEY `idx_fk_city_id` (`city_id`),
CONSTRAINT `fk_address_city` FOREIGN KEY (`city_id`) REFERENCES `city` (`city_id`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=606 DEFAULT CHARSET=utf8',
- array(
- array(
+ [
+ [
'constraint' => 'fk_address_city',
- 'index_list' => array('city_id'),
+ 'index_list' => ['city_id'],
'ref_db_name' => null,
'ref_table_name' => 'city',
- 'ref_index_list' => array('city_id'),
+ 'ref_index_list' => ['city_id'],
'on_update' => 'CASCADE',
- ),
- ),
- ),
- );
+ ],
+ ],
+ ],
+ ];
}
/**
@@ -123,12 +123,12 @@ class TableTest extends TestCase
public function getFieldsProvider()
{
- return array(
- array(
+ return [
+ [
'CREATE USER test',
- array(),
- ),
- array(
+ [],
+ ],
+ [
'CREATE TABLE `address` (
`address_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
`address` varchar(50) NOT NULL,
@@ -142,76 +142,76 @@ class TableTest extends TestCase
KEY `idx_fk_city_id` (`city_id`),
CONSTRAINT `fk_address_city` FOREIGN KEY (`city_id`) REFERENCES `city` (`city_id`) ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=606 DEFAULT CHARSET=utf8',
- array(
- 'address_id' => array(
+ [
+ 'address_id' => [
'type' => 'SMALLINT',
'timestamp_not_null' => false,
- ),
- 'address' => array(
+ ],
+ 'address' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
- ),
- 'address2' => array(
+ ],
+ 'address2' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
'default_value' => 'NULL',
- ),
- 'district' => array(
+ ],
+ 'district' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
- ),
- 'city_id' => array(
+ ],
+ 'city_id' => [
'type' => 'SMALLINT',
'timestamp_not_null' => false,
- ),
- 'postal_code' => array(
+ ],
+ 'postal_code' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
'default_value' => 'NULL',
- ),
- 'phone' => array(
+ ],
+ 'phone' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
- ),
- 'last_update' => array(
+ ],
+ 'last_update' => [
'type' => 'TIMESTAMP',
'timestamp_not_null' => true,
'default_value' => 'CURRENT_TIMESTAMP',
'default_current_timestamp' => true,
'on_update_current_timestamp' => true,
- ),
- ),
- ),
- array(
+ ],
+ ],
+ ],
+ [
'CREATE TABLE table1 (
a INT NOT NULL,
b VARCHAR(32),
c INT AS (a mod 10) VIRTUAL,
d VARCHAR(5) AS (left(b,5)) PERSISTENT
)',
- array(
- 'a' => array(
+ [
+ 'a' => [
'type' => 'INT',
'timestamp_not_null' => false,
- ),
- 'b' => array(
+ ],
+ 'b' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
- ),
- 'c' => array(
+ ],
+ 'c' => [
'type' => 'INT',
'timestamp_not_null' => false,
'generated' => true,
'expr' => '(a mod 10)',
- ),
- 'd' => array(
+ ],
+ 'd' => [
'type' => 'VARCHAR',
'timestamp_not_null' => false,
'generated' => true,
'expr' => '(left(b,5))',
- ),
- ),
- ),
- );
+ ],
+ ],
+ ],
+ ];
}
}
diff --git a/tests/Utils/TokensTest.php b/tests/Utils/TokensTest.php
index 5e268ec..533021c 100644
--- a/tests/Utils/TokensTest.php
+++ b/tests/Utils/TokensTest.php
@@ -23,20 +23,20 @@ class TokensTest extends TestCase
public function replaceTokensProvider()
{
- return array(
- array(
+ return [
+ [
'SELECT * FROM /*x*/a/*c*/.b',
- array(
- array('value_str' => 'a'),
- array('token' => '.'),
- ),
- array(
+ [
+ ['value_str' => 'a'],
+ ['token' => '.'],
+ ],
+ [
new Token('c'),
new Token('.'),
- ),
+ ],
'SELECT * FROM /*x*/c.b',
- ),
- );
+ ],
+ ];
}
/**
@@ -53,60 +53,64 @@ class TokensTest extends TestCase
public function matchProvider()
{
- return array(
- array(new Token(''), array(), true),
+ return [
+ [
+ new Token(''),
+ [],
+ true,
+ ],
- array(
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('token' => '"abc"'),
+ ['token' => '"abc"'],
true,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('value' => 'abc'),
+ ['value' => 'abc'],
true,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('value_str' => 'ABC'),
+ ['value_str' => 'ABC'],
true,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('type' => Token::TYPE_STRING),
+ ['type' => Token::TYPE_STRING],
true,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('flags' => Token::FLAG_STRING_DOUBLE_QUOTES),
+ ['flags' => Token::FLAG_STRING_DOUBLE_QUOTES],
true,
- ),
+ ],
- array(
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('token' => '"abcd"'),
+ ['token' => '"abcd"'],
false,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('value' => 'abcd'),
+ ['value' => 'abcd'],
false,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('value_str' => 'ABCd'),
+ ['value_str' => 'ABCd'],
false,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('type' => Token::TYPE_NUMBER),
+ ['type' => Token::TYPE_NUMBER],
false,
- ),
- array(
+ ],
+ [
new Token('"abc"', Token::TYPE_STRING, Token::FLAG_STRING_DOUBLE_QUOTES),
- array('flags' => Token::FLAG_STRING_SINGLE_QUOTES),
+ ['flags' => Token::FLAG_STRING_SINGLE_QUOTES],
false,
- ),
- );
+ ],
+ ];
}
}