protected function ViewsFieldTest::setUp in Workbench Access 8
Overrides BrowserTestBase::setUp
File
- tests/
src/ Functional/ ViewsFieldTest.php, line 84
Class
- ViewsFieldTest
- Defines a class for testing workbench access views.
Namespace
Drupal\Tests\workbench_access\FunctionalCode
protected function setUp() {
parent::setUp();
// Create some sections and some nodes in them.
$sections = [
'Some section',
'Another section',
'More sections',
];
foreach ($sections as $section) {
$this->terms[$section] = Term::create([
'vid' => 'editorial_section',
'name' => $section . ' term',
]);
$this->terms[$section]
->save();
foreach ([
' node 1',
' node 2',
] as $stub) {
$title = $section . $stub;
$this->nodes[$title] = Node::create([
'type' => 'article',
'title' => $title,
'status' => 1,
'field_workbench_access' => $this->terms[$section],
]);
$this->nodes[$title]
->save();
}
}
// Create a user who can access content etc.
$permissions = [
'create article content',
'edit any article content',
'access content',
'delete any article content',
'administer nodes',
'access user profiles',
'use workbench access',
];
$this->user = $this
->createUser($permissions);
$this->user
->save();
$this->userStorage = \Drupal::service('workbench_access.user_section_storage');
$this->scheme = AccessScheme::load('editorial_section');
$values = array_values(array_map(function (TermInterface $term) {
return $term
->id();
}, $this->terms));
$this->userStorage
->addUser($this->scheme, $this->user, $values);
$this->user2 = $this
->createUser($permissions);
$this->user2
->save();
$values = [
reset($this->terms)
->id(),
];
$this->userStorage
->addUser($this->scheme, $this->user2, $values);
}