diff core/modules/node/tests/src/Traits/NodeCreationTrait.php @ 18:af1871eacc83

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:33:08 +0100
parents 4c8ae668cc8c
children
line wrap: on
line diff
--- a/core/modules/node/tests/src/Traits/NodeCreationTrait.php	Thu Feb 28 13:21:36 2019 +0000
+++ b/core/modules/node/tests/src/Traits/NodeCreationTrait.php	Thu May 09 15:33:08 2019 +0100
@@ -3,6 +3,7 @@
 namespace Drupal\Tests\node\Traits;
 
 use Drupal\node\Entity\Node;
+use Drupal\user\Entity\User;
 
 /**
  * Provides methods to create node based on default settings.
@@ -75,8 +76,23 @@
       ],
       'title'     => $this->randomMachineName(8),
       'type'      => 'page',
-      'uid'       => \Drupal::currentUser()->id(),
     ];
+
+    if (!array_key_exists('uid', $settings)) {
+      $user = User::load(\Drupal::currentUser()->id());
+      if ($user) {
+        $settings['uid'] = $user->id();
+      }
+      elseif (method_exists($this, 'setUpCurrentUser')) {
+        /** @var \Drupal\user\UserInterface $user */
+        $user = $this->setUpCurrentUser();
+        $settings['uid'] = $user->id();
+      }
+      else {
+        $settings['uid'] = 0;
+      }
+    }
+
     $node = Node::create($settings);
     $node->save();