Add @covers tags to user tests
[lhc/web/wiklou.git] / tests / phpunit / includes / user / UserTest.php
index 52fd320..f004e79 100644 (file)
@@ -600,7 +600,13 @@ class UserTest extends MediaWikiTestCase {
                        'wgSecretKey' => MWCryptRand::generateHex( 64, true ),
                ] );
 
+               // Unregister the hooks for proper unit testing
+               $this->mergeMwGlobalArrayValue( 'wgHooks', [
+                       'PerformRetroactiveAutoblock' => []
+               ] );
+
                // 1. Log in a test user, and block them.
+               $userBlocker = $this->getTestSysop()->getUser();
                $user1tmp = $this->getTestUser()->getUser();
                $request1 = new FauxRequest();
                $request1->getSession()->setUser( $user1tmp );
@@ -610,6 +616,7 @@ class UserTest extends MediaWikiTestCase {
                        'expiry' => wfTimestamp( TS_MW, $expiryFiveHours ),
                ] );
                $block->setTarget( $user1tmp );
+               $block->setBlocker( $userBlocker );
                $res = $block->insert();
                $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
                $user1 = User::newFromSession( $request1 );
@@ -640,7 +647,8 @@ class UserTest extends MediaWikiTestCase {
                $this->assertTrue( $user2->isAnon() );
                $this->assertFalse( $user2->isLoggedIn() );
                $this->assertTrue( $user2->isBlocked() );
-               $this->assertEquals( true, $user2->getBlock()->isAutoblocking() ); // Non-strict type-check.
+               // Non-strict type-check.
+               $this->assertEquals( true, $user2->getBlock()->isAutoblocking(), 'Autoblock does not work' );
                // Can't directly compare the objects becuase of member type differences.
                // One day this will work: $this->assertEquals( $block, $user2->getBlock() );
                $this->assertEquals( $block->getId(), $user2->getBlock()->getId() );
@@ -673,12 +681,19 @@ class UserTest extends MediaWikiTestCase {
                        'wgSecretKey' => MWCryptRand::generateHex( 64, true ),
                ] );
 
+               // Unregister the hooks for proper unit testing
+               $this->mergeMwGlobalArrayValue( 'wgHooks', [
+                       'PerformRetroactiveAutoblock' => []
+               ] );
+
                // 1. Log in a test user, and block them.
+               $userBlocker = $this->getTestSysop()->getUser();
                $testUser = $this->getTestUser()->getUser();
                $request1 = new FauxRequest();
                $request1->getSession()->setUser( $testUser );
                $block = new Block( [ 'enableAutoblock' => true ] );
                $block->setTarget( $testUser );
+               $block->setBlocker( $userBlocker );
                $res = $block->insert();
                $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
                $user = User::newFromSession( $request1 );
@@ -710,12 +725,20 @@ class UserTest extends MediaWikiTestCase {
                        'wgCookiePrefix' => 'wm_infinite_block',
                        'wgSecretKey' => MWCryptRand::generateHex( 64, true ),
                ] );
+
+               // Unregister the hooks for proper unit testing
+               $this->mergeMwGlobalArrayValue( 'wgHooks', [
+                       'PerformRetroactiveAutoblock' => []
+               ] );
+
                // 1. Log in a test user, and block them indefinitely.
+               $userBlocker = $this->getTestSysop()->getUser();
                $user1Tmp = $this->getTestUser()->getUser();
                $request1 = new FauxRequest();
                $request1->getSession()->setUser( $user1Tmp );
                $block = new Block( [ 'enableAutoblock' => true, 'expiry' => 'infinity' ] );
                $block->setTarget( $user1Tmp );
+               $block->setBlocker( $userBlocker );
                $res = $block->insert();
                $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
                $user1 = User::newFromSession( $request1 );
@@ -798,12 +821,19 @@ class UserTest extends MediaWikiTestCase {
                        'wgSecretKey' => MWCryptRand::generateHex( 64, true ),
                ] );
 
+               // Unregister the hooks for proper unit testing
+               $this->mergeMwGlobalArrayValue( 'wgHooks', [
+                       'PerformRetroactiveAutoblock' => []
+               ] );
+
                // 1. Log in a blocked test user.
+               $userBlocker = $this->getTestSysop()->getUser();
                $user1tmp = $this->getTestUser()->getUser();
                $request1 = new FauxRequest();
                $request1->getSession()->setUser( $user1tmp );
                $block = new Block( [ 'enableAutoblock' => true ] );
                $block->setTarget( $user1tmp );
+               $block->setBlocker( $userBlocker );
                $res = $block->insert();
                $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
                $user1 = User::newFromSession( $request1 );
@@ -836,12 +866,19 @@ class UserTest extends MediaWikiTestCase {
                        'wgSecretKey' => null,
                ] );
 
+               // Unregister the hooks for proper unit testing
+               $this->mergeMwGlobalArrayValue( 'wgHooks', [
+                       'PerformRetroactiveAutoblock' => []
+               ] );
+
                // 1. Log in a blocked test user.
+               $userBlocker = $this->getTestSysop()->getUser();
                $user1tmp = $this->getTestUser()->getUser();
                $request1 = new FauxRequest();
                $request1->getSession()->setUser( $user1tmp );
                $block = new Block( [ 'enableAutoblock' => true ] );
                $block->setTarget( $user1tmp );
+               $block->setBlocker( $userBlocker );
                $res = $block->insert();
                $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
                $user1 = User::newFromSession( $request1 );
@@ -866,6 +903,9 @@ class UserTest extends MediaWikiTestCase {
                $block->delete();
        }
 
+       /**
+        * @covers User::isPingLimitable
+        */
        public function testIsPingLimitable() {
                $request = new FauxRequest();
                $request->setIP( '1.2.3.4' );
@@ -902,6 +942,7 @@ class UserTest extends MediaWikiTestCase {
        }
 
        /**
+        * @covers User::getExperienceLevel
         * @dataProvider provideExperienceLevel
         */
        public function testExperienceLevel( $editCount, $memberSince, $expLevel ) {
@@ -931,6 +972,9 @@ class UserTest extends MediaWikiTestCase {
                $this->assertEquals( $expLevel, $user->getExperienceLevel() );
        }
 
+       /**
+        * @covers User::getExperienceLevel
+        */
        public function testExperienceLevelAnon() {
                $user = User::newFromName( '10.11.12.13', false );