Newer
Older
catch
committed
namespace Drupal\comment\Tests\Views;
use Drupal\comment\Entity\Comment;
use Drupal\user\Entity\User;
catch
committed
use Drupal\views\Views;
* Tests the user posted or commented filter handler.
*
* The actual stuff is done in the parent class.
*
* @group comment
class FilterUserUIDTest extends CommentTestBase {
catch
committed
/**
* Views used by this test.
*
* @var array
*/
public static $testViews = ['test_comment_user_uid'];
catch
committed
public function testCommentUserUIDTest() {
catch
committed
$view = Views::getView('test_comment_user_uid');
catch
committed
$view->setDisplay();
Angie Byron
committed
$view->removeHandler('default', 'argument', 'uid_touch');
// Add an additional comment which is not created by the user.
$new_user = User::create(['name' => 'new user']);
$new_user->save();
$comment = Comment::create([
'uid' => $new_user->uid->value,
'entity_id' => $this->nodeUserCommented->id(),
'entity_type' => 'node',
'field_name' => 'comment',
'subject' => 'if a woodchuck could chuck wood.',
]);
$comment->save();
$options = [
'table' => 'node_field_data',
'value' => [$this->loggedInUser->id()],
];
Angie Byron
committed
$view->addHandler('default', 'filter', 'node_field_data', 'uid_touch', $options);
$this->executeView($view, [$this->account->id()]);
$result_set = [
[
'nid' => $this->nodeUserPosted->id(),
],
[
'nid' => $this->nodeUserCommented->id(),
],
];
$column_map = ['nid' => 'nid'];
$this->assertIdenticalResultset($view, $result_set, $column_map);