X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F10test.t;h=0d5e1de2cb09ad773bc84aa167057d4ab02a9c0b;hb=b9a4fdaeeb2cc0b566968a740fd9063a095ade07;hp=885402648034915d7b0dd261f796dff07c979893;hpb=bc41b61a7748c2967e521cc03a141d99f39f0cac;p=dbsrgits%2FSQL-Abstract.git diff --git a/t/10test.t b/t/10test.t index 8854026..0d5e1de 100644 --- a/t/10test.t +++ b/t/10test.t @@ -19,7 +19,7 @@ if (not $author and not $ENV{SQLATEST_TESTER} and not $ENV{AUTOMATED_TESTING}) { my @sql_tests = ( - # WHERE condition - equal + # WHERE condition - equal { equal => 1, statements => [ @@ -268,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 @@ -573,34 +582,36 @@ my @sql_tests = ( ] }, { - 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 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)', + ] }, { - 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)', - ] + equal => 0, + statements => [ + 'SELECT count(*) FROM foo', + 'SELECT count(*) AS bar FROM foo', + 'SELECT count(*) AS "bar" FROM foo', + 'SELECT count(a) FROM foo', + 'SELECT count(1) FROM foo', + ] }, );