Anomie has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/399912 )
Change subject: Use 'unwrap' post-cache transform instead of
setWrapOutputClass( false )
......................................................................
Use 'unwrap' post-cache transform instead of setWrapOutputClass( false )
To reduce parser cache fragmentation, core is deprecating
$parserOptions->setWrapOutputClass( false ) in favor of
$parserOutput->getText( [ 'unwrap' => true ] );
Change-Id: I23a26ba0dfbe83007cd40e97d71a2139a5ecddc7
Depends-On: Iba16e78c41be992467101e7d83e9c3134765b101
---
M tests/phpunit/TemplateStylesHooksTest.php
1 file changed, 12 insertions(+), 13 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/TemplateStyles
refs/changes/12/399912/1
diff --git a/tests/phpunit/TemplateStylesHooksTest.php
b/tests/phpunit/TemplateStylesHooksTest.php
index deb8b7d..16f927b 100644
--- a/tests/phpunit/TemplateStylesHooksTest.php
+++ b/tests/phpunit/TemplateStylesHooksTest.php
@@ -134,7 +134,7 @@
* tag's output depends on the revision IDs of the input pages.
* @dataProvider provideTag
*/
- public function testTag( ParserOptions $popt, $wikitext, $expect ) {
+ public function testTag( ParserOptions $popt, $getTextOptions,
$wikitext, $expect ) {
global $wgParserConf;
$this->setMwGlobals( [
@@ -170,7 +170,7 @@
$out = $parser->parse( $wikitext, Title::newFromText( 'Test' ),
$popt );
$parser->mPreprocessor = null; # Break the Parser <->
Preprocessor cycle
- $this->assertEquals( $expect, $out->getText() );
+ $this->assertEquals( $expect, $out->getText( $getTextOptions )
);
}
public static function provideTag() {
@@ -178,72 +178,71 @@
$popt->setWrapOutputClass( 'templatestyles-test' );
$popt2 = ParserOptions::newFromContext(
RequestContext::getMain() );
- $popt2->setWrapOutputClass( false );
return [
'Tag without src' => [
- $popt,
+ $popt, [],
'<templatestyles />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div class=\"templatestyles-test\"><p><strong
class=\"error\">TemplateStyles' <code>src</code> attribute must not be
empty.</strong>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Tag with invalid src' => [
- $popt,
+ $popt, [],
'<templatestyles src="Test<>" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div class=\"templatestyles-test\"><p><strong
class=\"error\">Invalid title for TemplateStyles' <code>src</code>
attribute.</strong>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Tag with valid but nonexistent title' => [
- $popt,
+ $popt, [],
'<templatestyles
src="ThisDoes\'\'\'Not\'\'\'Exist" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div class=\"templatestyles-test\"><p><strong
class=\"error\">Page <a
href=\"/index.php?title=Template:ThisDoes%27%27%27Not%27%27%27Exist&action=edit&redlink=1\"
class=\"new\" title=\"Template:ThisDoes'''Not'''Exist
(page does not
exist)\">Template:ThisDoes'''Not'''Exist</a> has no
content.</strong>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Tag with valid but nonexistent title, main namespace'
=> [
- $popt,
+ $popt, [],
'<templatestyles
src=":ThisDoes\'\'\'Not\'\'\'Exist" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div class=\"templatestyles-test\"><p><strong
class=\"error\">Page <a
href=\"/index.php?title=ThisDoes%27%27%27Not%27%27%27Exist&action=edit&redlink=1\"
class=\"new\" title=\"ThisDoes'''Not'''Exist (page
does not exist)\">ThisDoes'''Not'''Exist</a> has no
content.</strong>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Tag with wikitext page' => [
- $popt,
+ $popt, [],
'<templatestyles src="TemplateStyles
test/wikitext" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div class=\"templatestyles-test\"><p><strong
class=\"error\">Page <a href=\"/wiki/Template:TemplateStyles_test/wikitext\"
title=\"Template:TemplateStyles test/wikitext\">Template:TemplateStyles
test/wikitext</a> must have content model \"Sanitized CSS\" for TemplateStyles
(current model is \"wikitext\").</strong>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Tag with CSS (not sanitized-css) page' => [
- $popt,
+ $popt, [],
'<templatestyles src="TemplateStyles
test/nonsanitized.css" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div class=\"templatestyles-test\"><p><strong
class=\"error\">Page <a
href=\"/wiki/Template:TemplateStyles_test/nonsanitized.css\"
title=\"Template:TemplateStyles test/nonsanitized.css\">Template:TemplateStyles
test/nonsanitized.css</a> must have content model \"Sanitized CSS\" for
TemplateStyles (current model is \"CSS\").</strong>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Working tag' => [
- $popt,
+ $popt, [],
'<templatestyles src="TemplateStyles
test/styles1.css" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div
class=\"templatestyles-test\"><p><style>.templatestyles-test
.foo{color:blue}</style>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Replaced content (which includes sanitization errors)'
=> [
- $popt,
+ $popt, [],
'<templatestyles src="Test replacement" />',
// @codingStandardsIgnoreStart Ignore
Generic.Files.LineLength.TooLong
"<div
class=\"templatestyles-test\"><p><style>/*\nErrors processing stylesheet
[[:Template:Test replacement]] (rev ):\n• Unrecognized or unsupported property
at line 1 character 22.\n*/\n.templatestyles-test
.baz{color:orange}</style>\n</p></div>",
// @codingStandardsIgnoreEnd
],
'Still prefixed despite no wrapper' => [
- $popt2,
+ $popt2, [ 'unwrap' => true ],
'<templatestyles src="TemplateStyles
test/styles1.css" />',
"<p><style>.mw-parser-output
.foo{color:blue}</style>\n</p>",
],
'Not yet deduplicated tags' => [
- $popt,
+ $popt, [],
trim( '
<templatestyles src="TemplateStyles test/styles1.css" />
<templatestyles src="TemplateStyles test/styles1.css" />
--
To view, visit https://gerrit.wikimedia.org/r/399912
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I23a26ba0dfbe83007cd40e97d71a2139a5ecddc7
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/TemplateStyles
Gerrit-Branch: master
Gerrit-Owner: Anomie <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits