blob: c7965b0b158a0bedca1d01b5d962e9293aa27b1b (
plain) (
blame)
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
|
<?php
namespace MediaWiki\Tests\Session;
use MediaWiki\Config\Config;
use MediaWiki\Config\HashConfig;
use MediaWiki\HookContainer\HookContainer;
use MediaWiki\Session\SessionManager;
use MediaWiki\Session\SessionProvider;
use MediaWiki\User\UserNameUtils;
use Psr\Log\LoggerInterface;
use Psr\Log\NullLogger;
/**
* A trait providing utility function for testing subclasses of
* SessionProvider. This trait is intended to be used on
* subclasses of MediaWikiIntegrationTestCase or MediaWikiUnitTestCase.
*
* @stable to use
*/
trait SessionProviderTestTrait {
/**
* Calls init() on an SessionProvider.
*
* @param SessionProvider $provider
* @param LoggerInterface|null $logger
* @param Config|null $config
* @param SessionManager|null $manager
* @param HookContainer|null $hookContainer
* @param UserNameUtils|null $userNameUtils
*/
private function initProvider(
SessionProvider $provider,
?LoggerInterface $logger = null,
?Config $config = null,
?SessionManager $manager = null,
?HookContainer $hookContainer = null,
?UserNameUtils $userNameUtils = null
) {
$provider->init(
$logger ?? new NullLogger(),
$config ?? new HashConfig(),
$manager ?? $this->createNoOpMock( SessionManager::class ),
$hookContainer ?? $this->createHookContainer(),
$userNameUtils ?? $this->createNoOpMock( UserNameUtils::class )
);
}
}
|