Page MenuHomeWickedGov Phorge

ParserObserverIntegrationTest.php
No OneTemporary

Size
1 KB
Referenced Files
None
Subscribers
None

ParserObserverIntegrationTest.php

<?php
namespace MediaWiki\Tests\Parser;
use MediaWiki\Parser\ParserObserver;
use MediaWikiIntegrationTestCase;
use TestLogger;
/**
* @covers \MediaWiki\Parser\ParserObserver
* @group Database
*/
class ParserObserverIntegrationTest extends MediaWikiIntegrationTestCase {
/**
* @param bool $duplicate
* @param int $count
*
* @dataProvider provideDuplicateParse
*/
public function testDuplicateParse( bool $duplicate, int $count ) {
$logger = new TestLogger( true );
$observer = new ParserObserver( $logger );
$this->setService( '_ParserObserver', $observer );
$contentRenderer = $this->getServiceContainer()->getContentRenderer();
// Create a test page. Parse it twice if a duplicate is desired, or once otherwise.
$page = $this->getExistingTestPage();
$contentRenderer->getParserOutput( $page->getContent(), $page->getTitle() );
if ( $duplicate ) {
$contentRenderer->getParserOutput( $page->getContent(), $page->getTitle() );
}
$this->assertCount( $count, $logger->getBuffer() );
}
public static function provideDuplicateParse() {
yield [ true, 1 ];
yield [ false, 0 ];
}
}

File Metadata

Mime Type
text/x-php
Expires
Wed, Aug 19, 16:05 (4 w, 23 h ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
40/f6/ee3b775375d5513fdb33f093b134
Default Alt Text
ParserObserverIntegrationTest.php (1 KB)

Event Timeline