Security update for Core, with self-updated composer
[yaffs-website] / web / core / modules / user / src / Tests / UserResetEmailTestTrait.php
diff --git a/web/core/modules/user/src/Tests/UserResetEmailTestTrait.php b/web/core/modules/user/src/Tests/UserResetEmailTestTrait.php
new file mode 100644 (file)
index 0000000..2fbbbbf
--- /dev/null
@@ -0,0 +1,29 @@
+<?php
+
+namespace Drupal\user\Tests;
+
+use Drupal\Core\Test\AssertMailTrait;
+
+/**
+ * Helper function for logging in from reset password email.
+ */
+trait UserResetEmailTestTrait {
+
+  use AssertMailTrait {
+    getMails as drupalGetMails;
+  }
+
+  /**
+   * Login from reset password email.
+   */
+  protected function loginFromResetEmail() {
+    $_emails = $this->drupalGetMails();
+    $email = end($_emails);
+    $urls = [];
+    preg_match('#.+user/reset/.+#', $email['body'], $urls);
+    $resetURL = $urls[0];
+    $this->drupalGet($resetURL);
+    $this->drupalPostForm(NULL, NULL, 'Log in');
+  }
+
+}