titleFormatter = MediaWikiServices::getInstance()->getTitleFormatter(); } public static function provideCreateFromLegacyOptions() { return [ [ [ 'forcearticlepath' ], 'getForceArticlePath', true ], [ [ 'http' ], 'getExpandURLs', PROTO_HTTP ], [ [ 'https' ], 'getExpandURLs', PROTO_HTTPS ], [ [ 'stubThreshold' => 150 ], 'getStubThreshold', 150 ], ]; } /** * @dataProvider provideCreateFromLegacyOptions */ public function testCreateFromLegacyOptions( $options, $func, $val ) { $factory = new LinkRendererFactory( $this->titleFormatter ); $linkRenderer = $factory->createFromLegacyOptions( $options ); $this->assertInstanceOf( LinkRenderer::class, $linkRenderer ); $this->assertEquals( $val, $linkRenderer->$func(), $func ); } public function testCreate() { $factory = new LinkRendererFactory( $this->titleFormatter ); $this->assertInstanceOf( LinkRenderer::class, $factory->create() ); } public function testCreateForUser() { $user = $this->getMock( User::class, [ 'getStubThreshold' ] ); $user->expects( $this->once() ) ->method( 'getStubThreshold' ) ->willReturn( 15 ); $factory = new LinkRendererFactory( $this->titleFormatter ); $linkRenderer = $factory->createForUser( $user ); $this->assertInstanceOf( LinkRenderer::class, $linkRenderer ); $this->assertEquals( 15, $linkRenderer->getStubThreshold() ); } }