]> scripts.mit.edu Git - autoinstalls/mediawiki.git/blob - tests/phpunit/includes/GlobalFunctions/wfGetCallerTest.php
MediaWiki 1.30.2
[autoinstalls/mediawiki.git] / tests / phpunit / includes / GlobalFunctions / wfGetCallerTest.php
1 <?php
2
3 /**
4  * @group GlobalFunctions
5  * @covers ::wfGetCaller
6  */
7 class WfGetCallerTest extends MediaWikiTestCase {
8         public function testZero() {
9                 $this->assertEquals( 'WfGetCallerTest->testZero', wfGetCaller( 1 ) );
10         }
11
12         function callerOne() {
13                 return wfGetCaller();
14         }
15
16         public function testOne() {
17                 $this->assertEquals( 'WfGetCallerTest->testOne', self::callerOne() );
18         }
19
20         static function intermediateFunction( $level = 2, $n = 0 ) {
21                 if ( $n > 0 ) {
22                         return self::intermediateFunction( $level, $n - 1 );
23                 }
24
25                 return wfGetCaller( $level );
26         }
27
28         public function testTwo() {
29                 $this->assertEquals( 'WfGetCallerTest->testTwo', self::intermediateFunction() );
30         }
31
32         public function testN() {
33                 $this->assertEquals( 'WfGetCallerTest->testN', self::intermediateFunction( 2, 0 ) );
34                 $this->assertEquals(
35                         'WfGetCallerTest::intermediateFunction',
36                         self::intermediateFunction( 1, 0 )
37                 );
38
39                 for ( $i = 0; $i < 10; $i++ ) {
40                         $this->assertEquals(
41                                 'WfGetCallerTest::intermediateFunction',
42                                 self::intermediateFunction( $i + 1, $i )
43                         );
44                 }
45         }
46 }