]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - tests/phpunit/includes/api/query/ApiQueryRevisionsTest.php
MediaWiki 1.30.2
[autoinstallsdev/mediawiki.git] / tests / phpunit / includes / api / query / ApiQueryRevisionsTest.php
1 <?php
2
3 /**
4  * @group API
5  * @group Database
6  * @group medium
7  * @covers ApiQueryRevisions
8  */
9 class ApiQueryRevisionsTest extends ApiTestCase {
10
11         /**
12          * @group medium
13          */
14         public function testContentComesWithContentModelAndFormat() {
15                 $pageName = 'Help:' . __METHOD__;
16                 $title = Title::newFromText( $pageName );
17                 $page = WikiPage::factory( $title );
18
19                 $page->doEditContent(
20                         ContentHandler::makeContent( 'Some text', $page->getTitle() ),
21                         'inserting content'
22                 );
23
24                 $apiResult = $this->doApiRequest( [
25                         'action' => 'query',
26                         'prop' => 'revisions',
27                         'titles' => $pageName,
28                         'rvprop' => 'content',
29                 ] );
30                 $this->assertArrayHasKey( 'query', $apiResult[0] );
31                 $this->assertArrayHasKey( 'pages', $apiResult[0]['query'] );
32                 foreach ( $apiResult[0]['query']['pages'] as $page ) {
33                         $this->assertArrayHasKey( 'revisions', $page );
34                         foreach ( $page['revisions'] as $revision ) {
35                                 $this->assertArrayHasKey( 'contentformat', $revision,
36                                         'contentformat should be included when asking content so client knows how to interpret it'
37                                 );
38                                 $this->assertArrayHasKey( 'contentmodel', $revision,
39                                         'contentmodel should be included when asking content so client knows how to interpret it'
40                                 );
41                         }
42                 }
43         }
44 }