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
|
<?php
namespace MediaWiki\Tests\Session;
use MediaWiki\User\User;
/**
* Dummy session backend
*
* This isn't a real backend, but implements some methods that SessionBackend
* does so tests can run.
*
* FIXME This class is a huge hack, and it won't work e.g. as methods in Session(Backend) are typehinted.
* SessionBackend should be mocked directly instead, but that's currently impossible because the class is final.
* At the very least, there should be an interface that SessionBackend implements, and that could also be used
* for mocks.
*/
class DummySessionBackend {
/** @var array */
public $data = [
'foo' => 1,
'bar' => 2,
0 => 'zero',
];
/** @var bool */
public $dirty = false;
public function &getData() {
return $this->data;
}
public function dirty() {
$this->dirty = true;
}
public function getUser(): User {
return new User();
}
public function deregisterSession( $index ) {
}
}
|