Added unit test for RFC #6198: Problem with strings in IN
authorXavier Perseguers <typo3@perseguers.ch>
Sat, 7 Nov 2009 08:55:33 +0000 (08:55 +0000)
committerXavier Perseguers <typo3@perseguers.ch>
Sat, 7 Nov 2009 08:55:33 +0000 (08:55 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Extensions/dbal/trunk@26281 735d13b6-9817-0410-8766-e36946ffe9aa

typo3/sysext/dbal/ChangeLog
typo3/sysext/dbal/tests/db_oracle_testcase.php

index 24a0fa0..7d18653 100644 (file)
@@ -1,3 +1,7 @@
+2009-11-07  Xavier Perseguers  <typo3@perseguers.ch>
+
+       * Added unit test for RFC #6198: Problem with strings in IN
+
 2009-11-06  Xavier Perseguers  <typo3@perseguers.ch>
 
        * Set version to 0.9.25
index af2bce8..f68a042 100644 (file)
@@ -186,4 +186,19 @@ class db_oracle_testcase extends BaseTestCase {
                $expected .= ' WHERE 1 = 1';
                $this->assertEquals($expected, $query);
        }
+
+       /** 
+        * @test
+        * @see http://bugs.typo3.org/view.php?id=6198
+        */
+       public function stringsWithinInClauseAreProperlyQuoted() {
+               $query = $this->cleanSql($this->fixture->SELECTquery(
+                       'COUNT(DISTINCT tx_dam.uid) AS count',
+                       'tx_dam',
+                       'tx_dam.pid IN (1) AND tx_dam.file_type IN (\'gif\',\'png\',\'jpg\',\'jpeg\') AND tx_dam.deleted = 0'
+               ));
+               $expected = 'SELECT COUNT(DISTINCT "tx_dam"."uid") AS "count" FROM "tx_dam"';
+               $expected .= ' WHERE "tx_dam"."pid" IN (1) AND "tx_dam"."file_type" IN (\'gif\',\'png\',\'jpg\',\'jpeg\') AND "tx_dam"."deleted" = 0';
+               $this->assertEquals($query, $expected);
+       }
 }
\ No newline at end of file