X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/bf562540770a2889d2dacc02248572911eeb5fa5..refs/pull/4467/head:/tests/Auth/RegistrationTest.php diff --git a/tests/Auth/RegistrationTest.php b/tests/Auth/RegistrationTest.php index 45d265b72..bc190afd8 100644 --- a/tests/Auth/RegistrationTest.php +++ b/tests/Auth/RegistrationTest.php @@ -2,9 +2,9 @@ namespace Tests\Auth; -use BookStack\Auth\Role; -use BookStack\Auth\User; use BookStack\Notifications\ConfirmEmail; +use BookStack\Users\Models\Role; +use BookStack\Users\Models\User; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Notification; use Tests\TestCase; @@ -46,8 +46,18 @@ class RegistrationTest extends TestCase return $notification->token === $emailConfirmation->token; }); - // Check confirmation email confirmation activation. - $this->get('/register/confirm/' . $emailConfirmation->token)->assertRedirect('/login'); + // Check confirmation email confirmation accept page. + $resp = $this->get('/register/confirm/' . $emailConfirmation->token); + $acceptPage = $this->withHtml($resp); + $resp->assertOk(); + $resp->assertSee('Thanks for confirming!'); + $acceptPage->assertElementExists('form[method="post"][action$="/register/confirm/accept"][component="auto-submit"] button'); + $acceptPage->assertFieldHasValue('token', $emailConfirmation->token); + + // Check acceptance confirm + $this->post('/register/confirm/accept', ['token' => $emailConfirmation->token])->assertRedirect('/login'); + + // Check state on login redirect $this->get('/login')->assertSee('Your email has been confirmed! You should now be able to login using this email address.'); $this->assertDatabaseMissing('email_confirmations', ['token' => $emailConfirmation->token]); $this->assertDatabaseHas('users', ['name' => $dbUser->name, 'email' => $dbUser->email, 'email_confirmed' => true]);