'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 );
'expiry' => wfTimestamp( TS_MW, $expiryFiveHours ),
] );
$block->setTarget( $user1tmp );
- $block->insert();
+ $block->setBlocker( $userBlocker );
+ $res = $block->insert();
+ $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
$user1 = User::newFromSession( $request1 );
$user1->mBlock = $block;
$user1->load();
$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() );
'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->insert();
+ $block->setBlocker( $userBlocker );
+ $res = $block->insert();
+ $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
$user = User::newFromSession( $request1 );
$user->mBlock = $block;
$user->load();
'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->insert();
+ $block->setBlocker( $userBlocker );
+ $res = $block->insert();
+ $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
$user1 = User::newFromSession( $request1 );
$user1->mBlock = $block;
$user1->load();
'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->insert();
+ $block->setBlocker( $userBlocker );
+ $res = $block->insert();
+ $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
$user1 = User::newFromSession( $request1 );
$user1->mBlock = $block;
$user1->load();
'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->insert();
+ $block->setBlocker( $userBlocker );
+ $res = $block->insert();
+ $this->assertTrue( (bool)$res['id'], 'Failed to insert block' );
$user1 = User::newFromSession( $request1 );
$user1->mBlock = $block;
$user1->load();
$block->delete();
}
+ /**
+ * @covers User::isPingLimitable
+ */
public function testIsPingLimitable() {
$request = new FauxRequest();
$request->setIP( '1.2.3.4' );
}
/**
+ * @covers User::getExperienceLevel
* @dataProvider provideExperienceLevel
*/
public function testExperienceLevel( $editCount, $memberSince, $expLevel ) {
$this->assertEquals( $expLevel, $user->getExperienceLevel() );
}
+ /**
+ * @covers User::getExperienceLevel
+ */
public function testExperienceLevelAnon() {
$user = User::newFromName( '10.11.12.13', false );