Merge "Convert Special:NewFiles to use OOUI."
[lhc/web/wiklou.git] / tests / phpunit / includes / MessageTest.php
index 224b0cb..4c689ab 100644 (file)
@@ -223,13 +223,13 @@ class MessageTest extends MediaWikiLangTestCase {
         */
        public function testToStringKey() {
                $this->assertEquals( 'Main Page', wfMessage( 'mainpage' )->text() );
-               $this->assertEquals( '<i-dont-exist-evar>', wfMessage( 'i-dont-exist-evar' )->text() );
-               $this->assertEquals( '<i<dont>exist-evar>', wfMessage( 'i<dont>exist-evar' )->text() );
-               $this->assertEquals( '<i-dont-exist-evar>', wfMessage( 'i-dont-exist-evar' )->plain() );
-               $this->assertEquals( '<i<dont>exist-evar>', wfMessage( 'i<dont>exist-evar' )->plain() );
-               $this->assertEquals( '&lt;i-dont-exist-evar&gt;', wfMessage( 'i-dont-exist-evar' )->escaped() );
+               $this->assertEquals( '⧼i-dont-exist-evar⧽', wfMessage( 'i-dont-exist-evar' )->text() );
+               $this->assertEquals( '⧼i&lt;dont&gt;exist-evar⧽', wfMessage( 'i<dont>exist-evar' )->text() );
+               $this->assertEquals( '⧼i-dont-exist-evar⧽', wfMessage( 'i-dont-exist-evar' )->plain() );
+               $this->assertEquals( '⧼i&lt;dont&gt;exist-evar⧽', wfMessage( 'i<dont>exist-evar' )->plain() );
+               $this->assertEquals( '⧼i-dont-exist-evar⧽', wfMessage( 'i-dont-exist-evar' )->escaped() );
                $this->assertEquals(
-                       '&lt;i&lt;dont&gt;exist-evar&gt;',
+                       '⧼i&lt;dont&gt;exist-evar⧽',
                        wfMessage( 'i<dont>exist-evar' )->escaped()
                );
        }
@@ -237,8 +237,10 @@ class MessageTest extends MediaWikiLangTestCase {
        public static function provideToString() {
                return [
                        [ 'mainpage', 'Main Page' ],
-                       [ 'i-dont-exist-evar', '<i-dont-exist-evar>' ],
-                       [ 'i-dont-exist-evar', '&lt;i-dont-exist-evar&gt;', 'escaped' ],
+                       [ 'i-dont-exist-evar', '⧼i-dont-exist-evar⧽' ],
+                       [ 'i-dont-exist-evar', '⧼i-dont-exist-evar⧽', 'escaped' ],
+                       [ 'script>alert(1)</script', '⧼script&gt;alert(1)&lt;/script⧽', 'escaped' ],
+                       [ 'script>alert(1)</script', '⧼script&gt;alert(1)&lt;/script⧽' ],
                ];
        }
 
@@ -589,6 +591,10 @@ class MessageTest extends MediaWikiLangTestCase {
        public function testNewFromSpecifier( $value, $expectedText ) {
                $message = Message::newFromSpecifier( $value );
                $this->assertInstanceOf( Message::class, $message );
+               if ( $value instanceof Message ) {
+                       $this->assertInstanceOf( get_class( $value ), $message );
+                       $this->assertEquals( $value, $message );
+               }
                $this->assertSame( $expectedText, $message->text() );
        }
 
@@ -602,7 +608,9 @@ class MessageTest extends MediaWikiLangTestCase {
                        'array' => [ [ 'youhavenewmessages', 'foo', 'bar' ], 'You have foo (bar).' ],
                        'Message' => [ new Message( 'youhavenewmessages', [ 'foo', 'bar' ] ), 'You have foo (bar).' ],
                        'RawMessage' => [ new RawMessage( 'foo ($1)', [ 'bar' ] ), 'foo (bar)' ],
+                       'ApiMessage' => [ new ApiMessage( [ 'mainpage' ], 'code', [ 'data' ] ), 'Main Page' ],
                        'MessageSpecifier' => [ $messageSpecifier, 'Main Page' ],
+                       'nested RawMessage' => [ [ new RawMessage( 'foo ($1)', [ 'bar' ] ) ], 'foo (bar)' ],
                ];
        }
 }