3 declare(strict_types=1);
    34     protected function setUp(): void
    42             $this->getMockBuilder(ilCtrl::class)->disableOriginalConstructor()->getMock()
    46             $this->getMockBuilder(ilObjUser::class)->disableOriginalConstructor()->getMock()
    50             $this->getMockBuilder(ilDBInterface::class)->disableAutoReturnValueGeneration()->getMock()
    54             $this->getMockBuilder(ilIniFile::class)->disableOriginalConstructor()->getMock()
    58             $this->getMockBuilder(\
ILIAS\Administration\Setting::class)->getMock()
    74         $DIC[$name] = 
static function (
$c) use ($name) {
    79     public function tstBasicSessionBehaviour(): 
void    85         $setting = $DIC[
'ilSetting'];
    86         $setting->method(
"get")->willReturnCallback(
    88                 if ($arg === 
'session_handling_type') {
    91                 if ($arg === 
'session_statistics') {
    95                 throw new \RuntimeException($arg);
   100         $ilDB = $DIC[
'ilDB'];
   101         $ilDB->method(
"update")->
   102             with(
"usr_session")->willReturn(1);
   104         $ilDB->method(
"quote")->withConsecutive(
   108             [
"e10adc3949ba59abbe56e057f20f883e"],
   110             [
"e10adc3949ba59abbe56e057f20f883e"],
   111             [
"e10adc3949ba59abbe56e057f20f883e"],
   115             [$this->greaterThan(time() - 100)],
   116             [
"e10adc3949ba59abbe56e057f20f883e"],
   119         willReturnOnConsecutiveCalls(
   123             "e10adc3949ba59abbe56e057f20f883e",
   124             "e10adc3949ba59abbe56e057f20f883e",
   126             "e10adc3949ba59abbe56e057f20f883e",
   127             "e10adc3949ba59abbe56e057f20f883e",
   132             "e10adc3949ba59abbe56e057f20f883e",
   135         $ilDB->expects($this->exactly(6))->method(
"numRows")->willReturn(1, 1, 1, 0, 1, 0);
   138         $ilDB->method(
"query")->withConsecutive(
   139             [
"SELECT 1 FROM usr_session WHERE session_id = 123456"],
   140             [
"SELECT 1 FROM usr_session WHERE session_id = 123456"],
   141             [
"SELECT data FROM usr_session WHERE session_id = 123456"],
   142             [
'SELECT * FROM usr_session WHERE session_id = e10adc3949ba59abbe56e057f20f883e'],
   143             [
'SELECT * FROM usr_session WHERE session_id = e10adc3949ba59abbe56e057f20f883e'],
   144             [
"SELECT 1 FROM usr_session WHERE session_id = 123456"],
   145             [
'SELECT data FROM usr_session WHERE session_id = e10adc3949ba59abbe56e057f20f883e'],
   146             [
'SELECT 1 FROM usr_session WHERE session_id = 123456'],
   147             [
'SELECT session_id,expires FROM usr_session WHERE expires < 123456'],
   148             [$this->stringStartsWith(
'SELECT 1 FROM usr_session WHERE session_id = ')],
   149             [
'SELECT 1 FROM usr_session WHERE session_id = 17']
   151             willReturnOnConsecutiveCalls(
   152                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   153                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   154                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   155                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   156                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   157                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   158                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   159                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   160                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   161                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock(),
   162                 $this->getMockBuilder(ilDBStatement::class)->disableAutoReturnValueGeneration()->getMock()
   164         $ilDB->expects($this->exactly(4))->method(
"fetchAssoc")->willReturn(
   165             [
"data" => 
"Testdata"],
   167             [
"data" => 
"Testdata"],
   170         $ilDB->expects($this->exactly(1))->method(
"fetchObject")->willReturn((
object) array(
   174         $ilDB->method(
"manipulate")->withConsecutive(
   175             [
'DELETE FROM usr_sess_istorage WHERE session_id = 123456'],
   176             [
'DELETE FROM usr_session WHERE session_id = e10adc3949ba59abbe56e057f20f883e'],
   177             [
'DELETE FROM usr_session WHERE user_id = e10adc3949ba59abbe56e057f20f883e']
   179         willReturnOnConsecutiveCalls(
   186         ilSession::_writeData(
"123456", 
"Testdata");
   188             $result .= 
"exists-";
   191             $result .= 
"write-get-";
   195             $result .= 
"duplicate-";
   199             $result .= 
"destroy-";
   203             $result .= 
"destroyExp-";
   208             $result .= 
"destroyByUser-";
   210         $this->assertEquals(
"exists-write-get-duplicate-destroy-destroyExp-destroyByUser-", $result);
   217         $ilUser = $DIC[
'ilUser'];
   220         $this->markTestIncomplete(
   221             'This test has not been implemented yet.'   229         if ($res[
"pwassist_id"] === 
"12345") {
   235         if ((
int) $res[
"user_id"] === $ilUser->getId()) {
   243             $result .= 
"destroy-";
   248         $this->assertEquals(
"find-read-destroy-", $result);
 setGlobalVariable(string $name, $value)
 
static _duplicate(string $a_session_id)
Duplicate session. 
 
static _destroyByUserId(int $a_user_id)
Destroy session. 
 
static _getData(string $a_session_id)
Get session data from table. 
 
db_pwassist_session_destroy(string $pwassist_id)
 
static _exists(string $a_session_id)
Check whether session exists. 
 
Class ChatMainBarProvider . 
 
const SESSION_HANDLING_FIXED
 
static _destroyExpiredSessions()
Destroy expired sessions. 
 
Customizing of pimple-DIC for ILIAS. 
 
db_pwassist_session_read(string $pwassist_id)
 
db_pwassist_session_write(string $pwassist_id, int $maxlifetime, int $user_id)
 
static _destroy($a_session_id, ?int $a_closing_context=null, $a_expired_at=null)
Destroy session. 
 
testPasswordAssisstanceSession()
 
db_pwassist_session_find(int $user_id)