Merge 'trunk' into 'test_refactor'
[scpubgit/Q-Branch.git] / t / 10test.t
index 91c9fee..1aa26f2 100644 (file)
@@ -145,6 +145,14 @@ my @sql_tests = (
         ]
       },
       {
+        equal => 1,
+        statements => [
+          q/SELECT foo FROM bar WHERE ((NOT a) AND b = 2)/,
+          q/SELECT foo FROM bar WHERE (NOT a) AND (b = 2)/,
+          q/SELECT foo FROM bar WHERE (NOT (a)) AND b = 2/,
+        ],
+      },
+      {
         equal => 0,
         statements => [
           q/SELECT foo FROM bar WHERE NOT a AND (b = 2)/,
@@ -260,6 +268,15 @@ my @sql_tests = (
       },
       {
         equal => 0,
+        parenthesis_significant => 1,
+        statements => [
+          q/SELECT foo FROM bar WHERE a IN (1,2,3)/,
+          q/SELECT foo FROM bar WHERE a IN (1,3,2)/,
+          q/SELECT foo FROM bar WHERE a IN ((1,2,3))/,
+        ]
+      },
+      {
+        equal => 0,
         statements => [
           # BETWEEN with/without parenthesis around itself/RHS is a sticky business
           # if I made a mistake here, simply rewrite the special BETWEEN handling in
@@ -564,6 +581,36 @@ my @sql_tests = (
           q/SELECT * FROM (SELECT * FROM bar WHERE ((b = 1) AND (c = 10))) AS foo WHERE (a = 2)/,
         ]
       },
+      {
+        equal => 0,
+        statements => [
+           'SELECT a,b,c FROM foo',
+           'SELECT a,c,b FROM foo',
+           'SELECT b,a,c FROM foo',
+           'SELECT b,c,a FROM foo',
+           'SELECT c,a,b FROM foo',
+           'SELECT c,b,a FROM foo',
+        ]
+      },
+      {
+        equal => 0,
+        statements => [
+           'SELECT count(*) FROM foo',
+           'SELECT count(a) FROM foo',
+           'SELECT count(1) FROM foo',
+        ]
+      },
+      {
+        equal => 0,
+        statements => [
+           'SELECT * FROM foo WHERE a IN (1,2,3)',
+           'SELECT * FROM foo WHERE a IN (1,3,2)',
+           'SELECT * FROM foo WHERE a IN (2,1,3)',
+           'SELECT * FROM foo WHERE a IN (2,3,1)',
+           'SELECT * FROM foo WHERE a IN (3,1,2)',
+           'SELECT * FROM foo WHERE a IN (3,2,1)',
+        ]
+      },
 );
 
 my @bind_tests = (