mirror of
https://github.com/e107inc/e107.git
synced 2025-08-13 01:54:12 +02:00
Fixes #4465 Some nested comments were not displaying. The number of DB queries when nested comments is active has now been dramatically reduced. Comments unit test added.
This commit is contained in:
119
e107_tests/tests/_data/comments/commentsSetup.xml
Normal file
119
e107_tests/tests/_data/comments/commentsSetup.xml
Normal file
@@ -0,0 +1,119 @@
|
||||
<?xml version='1.0' encoding='utf-8' ?>
|
||||
<e107Export version="2.3.1 (git)" timestamp="1616700542" >
|
||||
<database>
|
||||
<dbTable name="comments">
|
||||
<item>
|
||||
<field name="comment_id">1</field>
|
||||
<field name="comment_pid">0</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700193</field>
|
||||
<field name="comment_comment">blue</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
<item>
|
||||
<field name="comment_id">2</field>
|
||||
<field name="comment_pid">0</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700266</field>
|
||||
<field name="comment_comment">red</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
<item>
|
||||
<field name="comment_id">3</field>
|
||||
<field name="comment_pid">0</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700270</field>
|
||||
<field name="comment_comment">green</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
<item>
|
||||
<field name="comment_id">4</field>
|
||||
<field name="comment_pid">2</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">Re: New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700295</field>
|
||||
<field name="comment_comment">sub-red 1</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
<item>
|
||||
<field name="comment_id">5</field>
|
||||
<field name="comment_pid">2</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">Re: New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700310</field>
|
||||
<field name="comment_comment">sub-red 2</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
<item>
|
||||
<field name="comment_id">6</field>
|
||||
<field name="comment_pid">4</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">Re: New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700310</field>
|
||||
<field name="comment_comment">sub-red 1 child-1</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
<item>
|
||||
<field name="comment_id">7</field>
|
||||
<field name="comment_pid">4</field>
|
||||
<field name="comment_item_id">55</field>
|
||||
<field name="comment_subject">Re: New Title</field>
|
||||
<field name="comment_author_id">1</field>
|
||||
<field name="comment_author_name">admin</field>
|
||||
<field name="comment_author_email">nowhere@mail.com</field>
|
||||
<field name="comment_datestamp">1616700310</field>
|
||||
<field name="comment_comment">sub-red 1 child-2</field>
|
||||
<field name="comment_blocked">0</field>
|
||||
<field name="comment_ip">0000:0000:0000:0000:0000:ffff:7f00:0001</field>
|
||||
<field name="comment_type">profile</field>
|
||||
<field name="comment_lock">0</field>
|
||||
<field name="comment_share">0</field>
|
||||
</item>
|
||||
</dbTable>
|
||||
</database>
|
||||
</e107Export>
|
@@ -9,6 +9,19 @@
|
||||
|
||||
protected function _before()
|
||||
{
|
||||
if(e107::getDb()->isEmpty('comments'))
|
||||
{
|
||||
$path = codecept_data_dir().'comments/commentsSetup.xml';
|
||||
$result = e107::getXml()->e107Import($path);
|
||||
if(!empty($result['failed']))
|
||||
{
|
||||
$this->fail("Vstore setup failed. ".print_r($result['failed'], true));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
@@ -101,6 +114,33 @@
|
||||
$this->assertStringContainsString('e-comment-form',$result);
|
||||
|
||||
}
|
||||
|
||||
public function testLoadNested()
|
||||
{
|
||||
$result = $this->cm->loadNested(55,'profile', 'desc');
|
||||
|
||||
$this->assertNotempty($result['profile']);
|
||||
$this->assertCount(2, $result['profile'][2]);
|
||||
$this->assertCount(2, $result['profile'][4]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
public function testGetNested()
|
||||
{
|
||||
$this->cm->loadNested(55, 'profile', 'desc');
|
||||
|
||||
$result = $this->cm->getNested(4, 'profile');
|
||||
|
||||
$this->assertEquals('sub-red 1 child-1', $result[0]['comment_comment']);
|
||||
$this->assertEquals('sub-red 1 child-2', $result[1]['comment_comment']);
|
||||
|
||||
$result = $this->cm->getNested(2, 'profile');
|
||||
|
||||
$this->assertEquals('sub-red 2', $result[0]['comment_comment']);
|
||||
$this->assertEquals('sub-red 1', $result[1]['comment_comment']);
|
||||
|
||||
}
|
||||
/*
|
||||
public function testGetComments()
|
||||
{
|
||||
|
Reference in New Issue
Block a user