setMwGlobals( array( 'wgArticlePath' => '/wiki/$1', 'wgWellFormedXml' => true, ) ); $this->assertEquals( $expected, Linker::userLink( $userId, $userName, $altUserName, $msg ) ); } function provideCasesForUserLink() { # Format: # - expected # - userid # - username # - optional altUserName # - optional message return array( ### ANONYMOUS USER ######################################## array( 'JohnDoe', 0, 'JohnDoe', false, ), array( '::1', 0, '::1', false, 'Anonymous with pretty IPv6' ), array( '::1', 0, '0:0:0:0:0:0:0:1', false, 'Anonymous with almost pretty IPv6' ), array( '::1', 0, '0000:0000:0000:0000:0000:0000:0000:0001', false, 'Anonymous with full IPv6' ), array( 'AlternativeUsername', 0, '::1', 'AlternativeUsername', 'Anonymous with pretty IPv6 and an alternative username' ), # IPV4 array( '127.0.0.1', 0, '127.0.0.1', false, 'Anonymous with IPv4' ), array( 'AlternativeUsername', 0, '127.0.0.1', 'AlternativeUsername', 'Anonymous with IPv4 and an alternative username' ), ### Regular user ########################################## # TODO! ); } }