From f52594242e31d5ecfc9b71287bf9b87da8828a1a Mon Sep 17 00:00:00 2001 From: ucorina Date: Mon, 6 Aug 2012 12:55:17 +0000 Subject: [PATCH] =?UTF-8?q?=20Issue=202213:=09queries=20xml=20=EC=9E=91?= =?UTF-8?q?=EC=84=B1=EC=8B=9C=20=EB=8D=94=ED=95=98=EA=B8=B0(+)=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9=EC=8B=9C=20=ED=8C=8C=EC=8B=B1=20=EC=97=90=EB=9F=AC=20?= =?UTF-8?q?=EB=AC=B8=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.2@10988 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- .../tags/condition/ConditionTag.class.php | 2 +- .../db/db/xml_query/mysql/MysqlSelectTest.php | 18 ++++++++++++++++++ .../db/xml_query/mysql/data/sumInCondition.xml | 11 +++++++++++ 3 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 tests/classes/db/db/xml_query/mysql/data/sumInCondition.xml diff --git a/classes/xml/xmlquery/tags/condition/ConditionTag.class.php b/classes/xml/xmlquery/tags/condition/ConditionTag.class.php index 236a6ba3a..32d872d9f 100644 --- a/classes/xml/xmlquery/tags/condition/ConditionTag.class.php +++ b/classes/xml/xmlquery/tags/condition/ConditionTag.class.php @@ -59,7 +59,7 @@ if($isColumnName = (strpos($condition->attrs->default, '.') !== false && strpos($condition->attrs->default, '%') === false )) { - $condition->attrs->default = $dbParser->parseColumnName($condition->attrs->default); + $condition->attrs->default = $dbParser->parseExpression($condition->attrs->default); } if($condition->node_name == 'query') diff --git a/tests/classes/db/db/xml_query/mysql/MysqlSelectTest.php b/tests/classes/db/db/xml_query/mysql/MysqlSelectTest.php index 667458ef2..b74266cdc 100644 --- a/tests/classes/db/db/xml_query/mysql/MysqlSelectTest.php +++ b/tests/classes/db/db/xml_query/mysql/MysqlSelectTest.php @@ -342,4 +342,22 @@ class MysqlSelectTest extends MysqlTest { $this->_test($xml_file, $argsString, $expected); } + + /** + * Issue 2213 + * http://code.google.com/p/xe-core/issues/detail?id=2213 + * + * @author Corina Udrescu (dev@xpressengine.org) + */ + function testSumInCondition() + { + $xml_file = _TEST_PATH_ . "db/xml_query/mysql/data/sumInCondition.xml"; + $argsString = ''; + $expected = 'select * + from `xe_test11` as `a` + where `site_srl` = 0 + and `price` <= `a`.`pa_1`+`a`.`pa_2`'; + $this->_test($xml_file, $argsString, $expected); + + } } \ No newline at end of file diff --git a/tests/classes/db/db/xml_query/mysql/data/sumInCondition.xml b/tests/classes/db/db/xml_query/mysql/data/sumInCondition.xml new file mode 100644 index 000000000..b5353f374 --- /dev/null +++ b/tests/classes/db/db/xml_query/mysql/data/sumInCondition.xml @@ -0,0 +1,11 @@ + + + + + + + + + + +