Initally used a new sniff with autofix (T333745), but some provide are defined non-static in TestBase class and need more work to make them static in a compatible way Bug: T332865 Change-Id: I889d33424f0c01fb26f2d86f8d4fc3de3e568843
56 lines
1.7 KiB
PHP
56 lines
1.7 KiB
PHP
<?php
|
|
|
|
use MediaWiki\MainConfigNames;
|
|
use MediaWiki\Title\Title;
|
|
|
|
class ContentTransformerTest extends MediaWikiIntegrationTestCase {
|
|
|
|
public static function preSaveTransformProvider() {
|
|
return [
|
|
[
|
|
new WikitextContent( 'Test ~~~' ),
|
|
'Test [[Special:Contributions/127.0.0.1|127.0.0.1]]'
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* @covers MediaWiki\Content\Transform\ContentTransformer::preSaveTransform
|
|
*
|
|
* @dataProvider preSaveTransformProvider
|
|
*/
|
|
public function testPreSaveTransform( $content, $expectedContainText ) {
|
|
$this->overrideConfigValue( MainConfigNames::LanguageCode, 'en' );
|
|
$services = $this->getServiceContainer();
|
|
$title = Title::newFromText( 'Test' );
|
|
$user = new User();
|
|
$user->setName( "127.0.0.1" );
|
|
$options = ParserOptions::newFromUser( $user );
|
|
|
|
$newContent = $services->getContentTransformer()->preSaveTransform( $content, $title, $user, $options );
|
|
$this->assertSame( $expectedContainText, $newContent->serialize() );
|
|
}
|
|
|
|
public static function preloadTransformProvider() {
|
|
return [
|
|
[
|
|
new WikitextContent( '{{Foo}}<noinclude> censored</noinclude> information <!-- is very secret -->' ),
|
|
'{{Foo}} information <!-- is very secret -->'
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* @covers MediaWiki\Content\Transform\ContentTransformer::preloadTransform
|
|
*
|
|
* @dataProvider preloadTransformProvider
|
|
*/
|
|
public function testPreloadTransform( $content, $expectedContainText ) {
|
|
$services = $this->getServiceContainer();
|
|
$title = Title::newFromText( 'Test' );
|
|
$options = ParserOptions::newFromAnon();
|
|
|
|
$newContent = $services->getContentTransformer()->preloadTransform( $content, $title, $options );
|
|
$this->assertSame( $expectedContainText, $newContent->serialize() );
|
|
}
|
|
}
|