<?php
-
/**
* @group Database
*/
],
// Linker::formatAutocomments
[
- '<a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a></span></span>',
"/* autocomment */",
],
[
- '<a href="/wiki/Special:BlankPage#linkie.3F" title="Special:BlankPage">→<a href="/wiki/index.php?title=Linkie%3F&action=edit&redlink=1" class="new" title="Linkie? (page does not exist)">linkie?</a></a>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#linkie.3F" title="Special:BlankPage">→[[linkie?]]</a></span></span>',
"/* [[linkie?]] */",
],
[
- '<a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a><span dir="auto"><span class="autocomment">: </span> post</span>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a>: </span> post</span>',
"/* autocomment */ post",
],
[
- 'pre <a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a>',
+ 'pre <span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a></span></span>',
"pre /* autocomment */",
],
[
- 'pre <a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a><span dir="auto"><span class="autocomment">: </span> post</span>',
+ 'pre <span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a>: </span> post</span>',
"pre /* autocomment */ post",
],
[
- '<a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a><span dir="auto"><span class="autocomment">: </span> multiple? <a href="/wiki/Special:BlankPage#autocomment2" title="Special:BlankPage">→autocomment2</a></span>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a>: </span> multiple? <span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment2" title="Special:BlankPage">→autocomment2</a></span></span></span>',
"/* autocomment */ multiple? /* autocomment2 */",
],
[
- '<a href="/wiki/Special:BlankPage#autocomment_containing_.2F.2A" title="Special:BlankPage">→autocomment containing /*</a><span dir="auto"><span class="autocomment">: </span> T70361</span>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment_containing_.2F.2A" title="Special:BlankPage">→autocomment containing /*</a>: </span> T70361</span>',
"/* autocomment containing /* */ T70361"
],
[
- '<a href="/wiki/Special:BlankPage#autocomment_containing_.22quotes.22" title="Special:BlankPage">→autocomment containing "quotes"</a>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment_containing_.22quotes.22" title="Special:BlankPage">→autocomment containing "quotes"</a></span></span>',
"/* autocomment containing \"quotes\" */"
],
[
- '<a href="/wiki/Special:BlankPage#autocomment_containing_.3Cscript.3Etags.3C.2Fscript.3E" title="Special:BlankPage">→autocomment containing <script>tags</script></a>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment_containing_.3Cscript.3Etags.3C.2Fscript.3E" title="Special:BlankPage">→autocomment containing <script>tags</script></a></span></span>',
"/* autocomment containing <script>tags</script> */"
],
[
- '<a href="#autocomment">→autocomment</a>',
+ '<span dir="auto"><span class="autocomment"><a href="#autocomment">→autocomment</a></span></span>',
"/* autocomment */",
false, true
],
[
- '<span dir="auto"><span class="autocomment">autocomment</span></span>',
+ '<span dir="auto"><span class="autocomment">autocomment</span></span>',
"/* autocomment */",
null
],
[
- '<a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a>',
+ '<span dir="auto"><span class="autocomment"><a href="/wiki/Special:BlankPage#autocomment" title="Special:BlankPage">→autocomment</a></span></span>',
"/* autocomment */",
false, false
],
[
- '<a class="external" rel="nofollow" href="//en.example.org/w/Special:BlankPage#autocomment">→autocomment</a>',
+ '<span dir="auto"><span class="autocomment"><a class="external" rel="nofollow" href="//en.example.org/w/Special:BlankPage#autocomment">→autocomment</a></span></span>',
"/* autocomment */",
false, false, $wikiId
],
);
}
+ /**
+ * @covers Linker::generateRollback
+ * @dataProvider provideCasesForRollbackGeneration
+ */
+ public function testGenerateRollback( $rollbackEnabled, $expectedModules ) {
+ $this->markTestSkippedIfDbType( 'postgres' );
+
+ $context = RequestContext::getMain();
+ $user = $context->getUser();
+ $user->setOption( 'showrollbackconfirmation', $rollbackEnabled );
+
+ $pageData = $this->insertPage( 'Rollback_Test_Page' );
+ $page = WikiPage::factory( $pageData['title'] );
+
+ $updater = $page->newPageUpdater( $user );
+ $updater->setContent( \MediaWiki\Revision\SlotRecord::MAIN,
+ new TextContent( 'Technical Wishes 123!' )
+ );
+ $summary = CommentStoreComment::newUnsavedComment( 'Some comment!' );
+ $updater->saveRevision( $summary );
+
+ $rollbackOutput = Linker::generateRollback( $page->getRevision(), $context );
+ $modules = $context->getOutput()->getModules();
+
+ $this->assertEquals( $expectedModules, $modules );
+ $this->assertContains( 'rollback 1 edit', $rollbackOutput );
+ }
+
+ public static function provideCasesForRollbackGeneration() {
+ return [
+ [
+ true,
+ [ 'mediawiki.page.rollback.confirmation' ]
+
+ ],
+ [
+ false,
+ []
+ ]
+ ];
+ }
+
public static function provideCasesForFormatLinksInComment() {
// phpcs:disable Generic.Files.LineLength
return [