From e78625dbcd70502b3ab1201999de456797ca1e17 Mon Sep 17 00:00:00 2001 From: aude Date: Thu, 25 Sep 2014 18:05:19 +0200 Subject: [PATCH] Add test cases to SpecialPageFactoryTest for registration via callback Change-Id: I9785e64d8daf27abca063f2bc584297db275c2db --- tests/TestsAutoLoader.php | 3 +++ .../specialpage/SpecialPageFactoryTest.php | 11 +++++++++ .../specialpage/SpecialPageTestHelper.php | 24 +++++++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 tests/phpunit/includes/specialpage/SpecialPageTestHelper.php diff --git a/tests/TestsAutoLoader.php b/tests/TestsAutoLoader.php index 2e8fed446e..7391afdc39 100644 --- a/tests/TestsAutoLoader.php +++ b/tests/TestsAutoLoader.php @@ -112,4 +112,7 @@ $wgAutoloadClasses += array( # tests/phpunit/includes/site 'SiteTest' => "$testDir/phpunit/includes/site/SiteTest.php", 'TestSites' => "$testDir/phpunit/includes/site/TestSites.php", + + # tests/phpunit/includes/specialpage + 'SpecialPageTestHelper' => "$testDir/phpunit/includes/specialpage/SpecialPageTestHelper.php", ); diff --git a/tests/phpunit/includes/specialpage/SpecialPageFactoryTest.php b/tests/phpunit/includes/specialpage/SpecialPageFactoryTest.php index cb122732de..fd6911f67a 100644 --- a/tests/phpunit/includes/specialpage/SpecialPageFactoryTest.php +++ b/tests/phpunit/includes/specialpage/SpecialPageFactoryTest.php @@ -52,12 +52,23 @@ class SpecialPageFactoryTest extends MediaWikiTestCase { } public function specialPageProvider() { + $specialPageTestHelper = new SpecialPageTestHelper(); + return array( 'class name' => array( 'SpecialAllPages', false ), 'closure' => array( function () { return new SpecialAllPages(); }, false ), 'function' => array( array( $this, 'newSpecialAllPages' ), false ), + 'callback string' => array( 'SpecialPageTestHelper::newSpecialAllPages', false ), + 'callback with object' => array( + array( $specialPageTestHelper, 'newSpecialAllPages' ), + false + ), + 'callback array' => array( + array( 'SpecialPageTestHelper', 'newSpecialAllPages' ), + false + ) ); } diff --git a/tests/phpunit/includes/specialpage/SpecialPageTestHelper.php b/tests/phpunit/includes/specialpage/SpecialPageTestHelper.php new file mode 100644 index 0000000000..37e29dcbc5 --- /dev/null +++ b/tests/phpunit/includes/specialpage/SpecialPageTestHelper.php @@ -0,0 +1,24 @@ +