View source
<?php
namespace Drupal\Tests\user\Kernel\Views;
use Drupal\KernelTests\KernelTestBase;
use Drupal\Tests\node\Traits\NodeCreationTrait;
use Drupal\Tests\user\Traits\UserCreationTrait;
use Drupal\views\Tests\ViewResultAssertionTrait;
use Drupal\views\Tests\ViewTestData;
use Drupal\views\Views;
class RelationshipRepresentativeNodeTest extends KernelTestBase {
use NodeCreationTrait;
use UserCreationTrait;
use ViewResultAssertionTrait;
protected static $modules = [
'filter',
'node',
'system',
'user',
'user_test_views',
'views',
];
public static $testViews = [
'test_groupwise_user',
];
public function testRelationship() {
$this
->installSchema('system', [
'sequences',
]);
$this
->installEntitySchema('user');
$this
->installEntitySchema('node');
$this
->installConfig([
'filter',
]);
ViewTestData::createTestViews(static::class, [
'user_test_views',
]);
$users[] = $this
->createUser([], NULL, FALSE, [
'uid' => 2,
]);
$users[] = $this
->createUser([], NULL, FALSE, [
'uid' => 1,
]);
$nodes[] = $this
->createNode([
'uid' => $users[0]
->id(),
]);
$nodes[] = $this
->createNode([
'uid' => $users[1]
->id(),
]);
$view = Views::getView('test_groupwise_user');
$view
->preview();
$map = [
'node_field_data_users_field_data_nid' => 'nid',
'uid' => 'uid',
];
$expected_result = [
[
'uid' => $users[1]
->id(),
'nid' => $nodes[1]
->id(),
],
[
'uid' => $users[0]
->id(),
'nid' => $nodes[0]
->id(),
],
];
$this
->assertIdenticalResultset($view, $expected_result, $map);
}
}