public function NodeOwnerTest::testOwner in Drupal 8
Same name and namespace in other branches
- 9 core/modules/node/tests/src/Kernel/NodeOwnerTest.php \Drupal\Tests\node\Kernel\NodeOwnerTest::testOwner()
- 10 core/modules/node/tests/src/Kernel/NodeOwnerTest.php \Drupal\Tests\node\Kernel\NodeOwnerTest::testOwner()
Tests node owner functionality.
File
- core/
modules/ node/ tests/ src/ Kernel/ NodeOwnerTest.php, line 45
Class
- NodeOwnerTest
- Tests node owner functionality.
Namespace
Drupal\Tests\node\KernelCode
public function testOwner() {
$user = $this
->createUser();
$container = \Drupal::getContainer();
$container
->get('current_user')
->setAccount($user);
// Create a test node.
$english = Node::create([
'type' => 'page',
'title' => $this
->randomMachineName(),
'language' => 'en',
]);
$english
->save();
$this
->assertEqual($user
->id(), $english
->getOwnerId());
$german = $english
->addTranslation('de');
$german->title = $this
->randomString();
$italian = $english
->addTranslation('it');
$italian->title = $this
->randomString();
// Node::preSave() sets owner to anonymous user if owner is nor set.
$english
->set('uid', [
'target_id' => NULL,
]);
$german
->set('uid', [
'target_id' => NULL,
]);
$italian
->set('uid', [
'target_id' => NULL,
]);
// Entity::save() saves all translations!
$italian
->save();
$this
->assertEqual(0, $english
->getOwnerId());
$this
->assertEqual(0, $german
->getOwnerId());
$this
->assertEqual(0, $italian
->getOwnerId());
}