From 40d3ce4f468f2eced5cdef4e47f69220c0a4be5a Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Tue, 21 Nov 2023 22:13:56 +0900 Subject: [PATCH] Add unit test ad5c3c0f5 --- tests/_data/dbquery/selectSubqueryTest1.xml | 12 ++++++++++-- tests/unit/framework/parsers/DBQueryParserTest.php | 9 +++++---- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/tests/_data/dbquery/selectSubqueryTest1.xml b/tests/_data/dbquery/selectSubqueryTest1.xml index c8c8f4773..38ab72699 100644 --- a/tests/_data/dbquery/selectSubqueryTest1.xml +++ b/tests/_data/dbquery/selectSubqueryTest1.xml @@ -1,14 +1,22 @@ -
+
-
+
+ + + +
+ + + + diff --git a/tests/unit/framework/parsers/DBQueryParserTest.php b/tests/unit/framework/parsers/DBQueryParserTest.php index e3d6cfdfc..061336362 100644 --- a/tests/unit/framework/parsers/DBQueryParserTest.php +++ b/tests/unit/framework/parsers/DBQueryParserTest.php @@ -244,18 +244,19 @@ class DBQueryParserTest extends \Codeception\Test\Unit $this->assertTrue($query->tables['m'] instanceof Rhymix\Framework\Parsers\DBQuery\Query); $this->assertEquals(1, count($query->tables['m']->tables)); $this->assertEquals('member', $query->tables['m']->tables['member']->name); - $this->assertEquals(2, count($query->tables['m']->columns)); + $this->assertEquals(3, count($query->tables['m']->columns)); $this->assertEquals(1, count($query->columns)); $this->assertEquals('documents.member_srl', $query->conditions[0]->column); $this->assertEquals('m.member_srl', $query->conditions[0]->default); - $sql = $query->getQueryString('rx_', []); + $sql = $query->getQueryString('rx_', ['nick_name' => 'foobar']); $params = $query->getQueryParams(); $this->assertEquals('SELECT `documents`.* FROM `rx_documents` AS `documents`, ' . - '(SELECT `member_srl`, `nick_name` FROM `rx_member` AS `member`) AS `m` ' . + '(SELECT `member_srl`, `nick_name`, `regdate` FROM `rx_member` AS `member` ' . + 'WHERE `documents`.`nick_name` = ?) AS `m` ' . 'WHERE `documents`.`member_srl` = `m`.`member_srl`', $sql); - $this->assertEquals([], $params); + $this->assertEquals(['foobar'], $params); } public function testSubquery2()