Blame view

tests/functional/LoginFormCest.php 1.56 KB
2049c43e   Alexey Boroda   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
  <?php
  
  class LoginFormCest
  {
      public function _before(\FunctionalTester $I)
      {
          $I->amOnRoute('site/login');
      }
  
      public function openLoginPage(\FunctionalTester $I)
      {
          $I->see('Login', 'h1');
  
      }
  
      // demonstrates `amLoggedInAs` method
      public function internalLoginById(\FunctionalTester $I)
      {
          $I->amLoggedInAs(100);
          $I->amOnPage('/');
          $I->see('Logout (admin)');
      }
  
      // demonstrates `amLoggedInAs` method
      public function internalLoginByInstance(\FunctionalTester $I)
      {
          $I->amLoggedInAs(\app\models\User::findByUsername('admin'));
          $I->amOnPage('/');
          $I->see('Logout (admin)');
      }
  
      public function loginWithEmptyCredentials(\FunctionalTester $I)
      {
          $I->submitForm('#login-form', []);
          $I->expectTo('see validations errors');
          $I->see('Username cannot be blank.');
          $I->see('Password cannot be blank.');
      }
  
      public function loginWithWrongCredentials(\FunctionalTester $I)
      {
          $I->submitForm('#login-form', [
              'LoginForm[username]' => 'admin',
              'LoginForm[password]' => 'wrong',
          ]);
          $I->expectTo('see validations errors');
          $I->see('Incorrect username or password.');
      }
  
      public function loginSuccessfully(\FunctionalTester $I)
      {
          $I->submitForm('#login-form', [
              'LoginForm[username]' => 'admin',
              'LoginForm[password]' => 'admin',
          ]);
          $I->see('Logout (admin)');
          $I->dontSeeElement('form#login-form');              
      }
  }