From ca32f08966f1b51fcb19460f0996bb0c4048e6fe Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sat, 3 Dec 2011 13:29:22 +0100 Subject: Update to MediaWiki 1.18.0 * also update ArchLinux skin to chagnes in MonoBook * Use only css to hide our menu bar when printing --- tests/phpunit/includes/MWFunctionTest.php | 86 +++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 tests/phpunit/includes/MWFunctionTest.php (limited to 'tests/phpunit/includes/MWFunctionTest.php') diff --git a/tests/phpunit/includes/MWFunctionTest.php b/tests/phpunit/includes/MWFunctionTest.php new file mode 100644 index 00000000..ed5e7602 --- /dev/null +++ b/tests/phpunit/includes/MWFunctionTest.php @@ -0,0 +1,86 @@ +assertEquals( + call_user_func( array( 'MWFunctionTest', 'someMethod' ) ), + MWFunction::call( 'MWFunctionTest::someMethod' ) + ); + $this->assertEquals( + call_user_func( array( 'MWFunctionTest', 'someMethod' ), 'foo', 'bar', 'baz' ), + MWFunction::call( 'MWFunctionTest::someMethod', 'foo', 'bar', 'baz' ) + ); + + + + $this->assertEquals( + call_user_func_array( array( 'MWFunctionTest', 'someMethod' ), array() ), + MWFunction::callArray( 'MWFunctionTest::someMethod', array() ) + ); + $this->assertEquals( + call_user_func_array( array( 'MWFunctionTest', 'someMethod' ), array( 'foo', 'bar', 'baz' ) ), + MWFunction::callArray( 'MWFunctionTest::someMethod', array( 'foo', 'bar', 'baz' ) ) + ); + + } + + function testNewObjFunction() { + + $arg1 = 'Foo'; + $arg2 = 'Bar'; + $arg3 = array( 'Baz' ); + $arg4 = new ExampleObject; + + $args = array( $arg1, $arg2, $arg3, $arg4 ); + + $newObject = new MWBlankClass( $arg1, $arg2, $arg3, $arg4 ); + + $this->assertEquals( + MWFunction::newObj( 'MWBlankClass', $args )->args, + $newObject->args + ); + + $this->assertEquals( + MWFunction::newObj( 'MWBlankClass', $args, true )->args, + $newObject->args, + 'Works even with PHP version < 5.1.3' + ); + + } + + /** + * @expectedException MWException + */ + function testCallingParentFails() { + + MWFunction::call( 'parent::foo' ); + } + + /** + * @expectedException MWException + */ + function testCallingSelfFails() { + + MWFunction::call( 'self::foo' ); + } + + public static function someMethod() { + return func_get_args(); + } + +} + +class MWBlankClass { + + public $args = array(); + + function __construct( $arg1, $arg2, $arg3, $arg4 ) { + $this->args = array( $arg1, $arg2, $arg3, $arg4 ); + } + +} + +class ExampleObject { +} -- cgit v1.2.3-54-g00ecf