ContentHandler::makeContent( 'Test for revdel', $title, CONTENT_MODEL_WIKITEXT ),
__METHOD__ . ' Test for revdel', 0, false, $user
);
- if ( !$status->isOk() ) {
+ if ( !$status->isOK() ) {
$this->fail( "Failed to create $title: " . $status->getWikiText( false, false, 'en' ) );
}
self::$pageId = $status->value['revision']->getPage();
ContentHandler::makeContent( 'Test for oldid', $title, CONTENT_MODEL_WIKITEXT ),
__METHOD__ . ' Test for oldid', 0, false, $user
);
- if ( !$status->isOk() ) {
+ if ( !$status->isOK() ) {
$this->fail( "Failed to edit $title: " . $status->getWikiText( false, false, 'en' ) );
}
self::$revIds['oldid'] = $status->value['revision']->getId();
ContentHandler::makeContent( 'Test for latest', $title, CONTENT_MODEL_WIKITEXT ),
__METHOD__ . ' Test for latest', 0, false, $user
);
- if ( !$status->isOk() ) {
+ if ( !$status->isOK() ) {
$this->fail( "Failed to edit $title: " . $status->getWikiText( false, false, 'en' ) );
}
self::$revIds['latest'] = $status->value['revision']->getId();
);
}
}
+
+ public function testSkinModules() {
+ $factory = new SkinFactory();
+ $factory->register( 'testing', 'Testing', function () {
+ $skin = $this->getMockBuilder( SkinFallback::class )
+ ->setMethods( [ 'getDefaultModules', 'setupSkinUserCss' ] )
+ ->getMock();
+ $skin->expects( $this->once() )->method( 'getDefaultModules' )
+ ->willReturn( [
+ 'core' => [ 'foo', 'bar' ],
+ 'content' => [ 'baz' ]
+ ] );
+ $skin->expects( $this->once() )->method( 'setupSkinUserCss' )
+ ->will( $this->returnCallback( function ( OutputPage $out ) {
+ $out->addModuleStyles( 'foo.styles' );
+ } ) );
+ return $skin;
+ } );
+ $this->setService( 'SkinFactory', $factory );
+
+ $res = $this->doApiRequest( [
+ 'action' => 'parse',
+ 'pageid' => self::$pageId,
+ 'useskin' => 'testing',
+ 'prop' => 'modules',
+ ] );
+ $this->assertSame(
+ [ 'foo', 'bar', 'baz' ],
+ $res[0]['parse']['modules'],
+ 'resp.parse.modules'
+ );
+ $this->assertSame(
+ [],
+ $res[0]['parse']['modulescripts'],
+ 'resp.parse.modulescripts'
+ );
+ $this->assertSame(
+ [ 'foo.styles' ],
+ $res[0]['parse']['modulestyles'],
+ 'resp.parse.modulestyles'
+ );
+ }
}