wiki.techinc.nl/tests/phpunit/includes/api/ApiClearHasMsgTest.php
Daimona Eaytoy 346cb7630b Replace usages of ApiTestCase::$users
Ideally we'd use Authority, but that doesn't always work, so just call
the getTest* methods directly.

Change-Id: I7f8393bb754beeb319b5555b5dac05265e376a22
2023-07-25 12:12:58 +00:00

34 lines
867 B
PHP

<?php
use MediaWiki\Permissions\UltimateAuthority;
use MediaWiki\User\UserIdentityValue;
/**
* @group API
* @group medium
* @covers ApiClearHasMsg
*/
class ApiClearHasMsgTest extends ApiTestCase {
/**
* Test clearing hasmsg flag for current user
*/
public function testClearFlag() {
$user = new UserIdentityValue( 42, __METHOD__ );
$talkPageNotificationManager = $this->getServiceContainer()
->getTalkPageNotificationManager();
$talkPageNotificationManager->setUserHasNewMessages( $user );
$this->assertTrue( $talkPageNotificationManager->userHasNewMessages( $user ) );
$data = $this->doApiRequest(
[ 'action' => 'clearhasmsg' ],
[],
false,
new UltimateAuthority( $user )
);
$this->assertEquals( 'success', $data[0]['clearhasmsg'] );
$this->assertFalse( $talkPageNotificationManager->userHasNewMessages( $user ) );
}
}