Guest User

Untitled

a guest
Dec 10th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1. <?php
  2.  
  3. namespace Tests\Feature\Auth;
  4.  
  5. use App\User;
  6. use Tests\TenantTestCase;
  7. use Auth;
  8.  
  9. class LoginTest extends TenantTestCase
  10. {
  11. protected $url;
  12.  
  13. protected function duringSetup()
  14. {
  15. $this->setUpHostnames(true);
  16. $this->setUpWebsites(true, true);
  17. $this->activateTenant();
  18.  
  19. $this->url = $this->tenantUrl . '/login';
  20. }
  21.  
  22. /** @test */
  23. public function browsePage()
  24. {
  25. // Visit login page at tenant url
  26. $this->get($this->url)
  27. ->assertViewIs('auth.login')
  28. ->assertSee('Login - ' . env('APP_NAME'));
  29.  
  30. }
  31.  
  32. /** @test */
  33. public function sendLogin()
  34. {
  35. // Visit Page first for correct redirect
  36. $this->get($this->url);
  37.  
  38. // Send invalid request
  39. $this->post($this->url, [])
  40. ->assertRedirect($this->url)
  41. ->assertSessionHasErrors();
  42.  
  43. $user = factory(User::class)->create();
  44.  
  45. // Test user login
  46. $response = $this->post($this->url, [
  47. 'email' => $user->email,
  48. 'password' => 'secret',
  49. ])
  50. ->assertRedirect($this->tenantUrl)
  51. ->assertSessionHasNoErrors();
  52.  
  53. //Make sure application logs in use
  54. $this->assertAuthenticatedAs($user);
  55. }
  56.  
  57. /** @test */
  58. public function loginWithRememberMeToken()
  59. {
  60. $user = factory(User::class)->create();
  61.  
  62. $this->post($this->url, [
  63. 'email' => $user->email,
  64. 'password' => 'secret',
  65. 'remember' => 'on',
  66. ])
  67. ->assertRedirect($this->tenantUrl)
  68. ->assertCookie(Auth::guard()->getRecallerName(), vsprintf('%s|%s|%s', [
  69. $user->id,
  70. $user->getRememberToken(),
  71. $user->password,
  72. ]));
  73.  
  74. $this->assertAuthenticatedAs($user);
  75. }
  76. }
Add Comment
Please, Sign In to add comment