Test to ensure that after adding a category to a template, the articles get moved...
authorPlatonides <platonides@users.mediawiki.org>
Sun, 27 Nov 2011 16:12:20 +0000 (16:12 +0000)
committerPlatonides <platonides@users.mediawiki.org>
Sun, 27 Nov 2011 16:12:20 +0000 (16:12 +0000)
Articles containing [[es:Plantilla:Ficha_de_pelĂ­cula]] showed the categories at the bottom, but were
not in categorylinks (solved by a doing a null edit to the template and waiting for the job queue, but
how did that situation happen to begin with?).

tests/phpunit/includes/TemplateCategoriesTest.php [new file with mode: 0644]

diff --git a/tests/phpunit/includes/TemplateCategoriesTest.php b/tests/phpunit/includes/TemplateCategoriesTest.php
new file mode 100644 (file)
index 0000000..0a6e18c
--- /dev/null
@@ -0,0 +1,32 @@
+<?php
+
+/**
+ * @group Database
+ */
+require dirname( __FILE__ ) . "/../../../maintenance/runJobs.php";
+
+class TemplateCategoriesTest extends MediaWikiLangTestCase {
+
+       function testTemplateCategories() {
+               global $wgUser;
+
+               $title = Title::newFromText( "Categorized from template" );
+               $article = new Article( $title );
+               $wgUser = new User();
+               $wgUser->mRights['*'] = array( 'createpage', 'edit', 'purge' );
+
+               $status = $article->doEdit( '{{Categorising template}}', 'Create a page with a template', 0 );
+               $this->assertEquals( $title->getParentCategories(), array() );
+
+               $template = new Article( Title::newFromText( 'Template:Categorising template' ) );
+               $status = $template->doEdit( '[[Category:Solved bugs]]', 'Add a category through a template', 0 );
+
+               // Run the job queue
+               $jobs = new RunJobs;
+               $jobs->loadParamsAndArgs( null, array( 'quiet' => true ), null );
+               $jobs->execute();
+
+               $this->assertEquals( $title->getParentCategories(), array( 'Category:Solved_bugs' => $title->getPrefixedText() ) );
+       }
+
+}