OneBot: Leantime 改造版源码(BOM/Univer 表格/AI 接管/品牌替换等)
This commit is contained in:
63
tests/Support/Page/Acceptance/Login.php
Normal file
63
tests/Support/Page/Acceptance/Login.php
Normal file
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Tests\Support\Page\Acceptance;
|
||||
|
||||
use Codeception\Util\Fixtures;
|
||||
|
||||
class Login
|
||||
{
|
||||
/**
|
||||
* @var \Tests\Support\AcceptanceTester;
|
||||
*/
|
||||
protected $I;
|
||||
|
||||
public function __construct(\Tests\Support\AcceptanceTester $I, Install $installPage)
|
||||
{
|
||||
$this->I = $I;
|
||||
$this->installPage = $installPage;
|
||||
}
|
||||
|
||||
public function login($username, $password)
|
||||
{
|
||||
if ($this->loadSessionShapshot('leantime_session')) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (! Fixtures::exists('installed')) {
|
||||
$this->installPage->install(
|
||||
'test@leantime.io',
|
||||
'Test123456!',
|
||||
'John',
|
||||
'Smith',
|
||||
'Smith & Co'
|
||||
);
|
||||
}
|
||||
|
||||
$this->I->amOnPage('/auth/login');
|
||||
$this->I->fillField(['name' => 'username'], $username);
|
||||
$this->I->fillField(['name' => 'password'], $password);
|
||||
$this->I->click('Login');
|
||||
$this->I->waitForElementVisible('.welcome-widget', 120);
|
||||
$this->I->see('Hi John');
|
||||
|
||||
$this->saveSessionSnapshot('leantime_session');
|
||||
}
|
||||
|
||||
protected function loadSessionShapshot(string $name): bool
|
||||
{
|
||||
if (! Fixtures::exists($name)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$this->I->setCookie($name, Fixtures::get($name));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
protected function saveSessionSnapshot(string $name): void
|
||||
{
|
||||
Fixtures::add($name, $this->I->grabCookie($name));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user