59 lines
1.6 KiB
PHP
59 lines
1.6 KiB
PHP
|
<?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');
|
||
|
}
|
||
|
}
|