3 use MediaWiki\Linker\LinkRenderer
;
4 use MediaWiki\Linker\LinkRendererFactory
;
5 use MediaWiki\MediaWikiServices
;
8 * @covers LinkRendererFactory
10 class LinkRendererFactoryTest
extends MediaWikiLangTestCase
{
15 private $titleFormatter;
17 public function setUp() {
19 $this->titleFormatter
= MediaWikiServices
::getInstance()->getTitleFormatter();
22 public static function provideCreateFromLegacyOptions() {
30 [ 'forcearticlepath' ],
31 'getForceArticlePath',
45 [ 'stubThreshold' => 150 ],
53 * @dataProvider provideCreateFromLegacyOptions
55 public function testCreateFromLegacyOptions( $options, $func, $val ) {
56 $factory = new LinkRendererFactory( $this->titleFormatter
);
57 $linkRenderer = $factory->createFromLegacyOptions(
60 $this->assertInstanceOf( LinkRenderer
::class, $linkRenderer );
61 $this->assertEquals( $val, $linkRenderer->$func(), $func );
64 public function testCreate() {
65 $factory = new LinkRendererFactory( $this->titleFormatter
);
66 $this->assertInstanceOf( LinkRenderer
::class, $factory->create() );
69 public function testCreateForUser() {
70 $user = $this->getMock( User
::class, [ 'getStubThreshold' ] );
71 $user->expects( $this->once() )
72 ->method( 'getStubThreshold' )
74 $factory = new LinkRendererFactory( $this->titleFormatter
);
75 $linkRenderer = $factory->createForUser( $user );
76 $this->assertInstanceOf( LinkRenderer
::class, $linkRenderer );
77 $this->assertEquals( 15, $linkRenderer->getStubThreshold() );