From: Chad Horohoe Date: Thu, 4 Sep 2014 02:30:15 +0000 (-0700) Subject: EditPageTest: Rewrite testCreatePage() to use a data provider X-Git-Tag: 1.31.0-rc.0~14158 X-Git-Url: http://git.heureux-cyclage.org/?a=commitdiff_plain;ds=sidebyside;h=f52842b5368a8571ba8950c4f6f66edd02f5c7d7;p=lhc%2Fweb%2Fwiklou.git EditPageTest: Rewrite testCreatePage() to use a data provider Change-Id: I415f9fdbca6a625d8d1e9ff4c05c861a96dfa290 --- diff --git a/tests/phpunit/includes/EditPageTest.php b/tests/phpunit/includes/EditPageTest.php index 27bc2930d3..185ffa4db5 100644 --- a/tests/phpunit/includes/EditPageTest.php +++ b/tests/phpunit/includes/EditPageTest.php @@ -180,107 +180,83 @@ class EditPageTest extends MediaWikiLangTestCase { return $page; } - /** - * @todo split into a dataprovider and test method - * @covers EditPage - */ - public function testCreatePage() { - $this->assertEdit( - 'EditPageTest_testCreatePage', - null, - null, - array( - 'wpTextbox1' => "Hello World!", + public function provideCreatePages() { + return array( + array( 'expected article being created', + 'EditPageTest_testCreatePage', + null, + 'Hello World!', + EditPage::AS_SUCCESS_NEW_ARTICLE, + 'Hello World!' ), - EditPage::AS_SUCCESS_NEW_ARTICLE, - "Hello World!", - "expected article being created" - )->doDeleteArticleReal( 'EditPageTest_testCreatePage' ); - - $this->assertEdit( - 'EditPageTest_testCreatePage', - null, - null, - array( - 'wpTextbox1' => "", + array( 'expected article not being created if empty', + 'EditPageTest_testCreatePage', + null, + '', + EditPage::AS_BLANK_ARTICLE, + null ), - EditPage::AS_BLANK_ARTICLE, - null, - "expected article not being created if empty" - ); - - $this->assertEdit( - 'MediaWiki:January', - null, - 'UTSysop', - array( - 'wpTextbox1' => "Not January", + array( 'expected MediaWiki: page being created', + 'MediaWiki:January', + 'UTSysop', + 'Not January', + EditPage::AS_SUCCESS_NEW_ARTICLE, + 'Not January' ), - EditPage::AS_SUCCESS_NEW_ARTICLE, - "Not January", - "expected MediaWiki: page being created" - )->doDeleteArticleReal( 'EditPageTest_testCreatePage' ); - - $this->assertEdit( - 'MediaWiki:EditPageTest_testCreatePage', - null, - 'UTSysop', - array( - 'wpTextbox1' => "", + array( 'expected not-registered MediaWiki: page not being created if empty', + 'MediaWiki:EditPageTest_testCreatePage', + 'UTSysop', + '', + EditPage::AS_BLANK_ARTICLE, + null ), - EditPage::AS_BLANK_ARTICLE, - null, - "expected not-registered MediaWiki: page not being created if empty" - ); - - $this->assertEdit( - 'MediaWiki:January', - null, - 'UTSysop', - array( - 'wpTextbox1' => "", + array( 'expected registered MediaWiki: page being created even if empty', + 'MediaWiki:January', + 'UTSysop', + '', + EditPage::AS_SUCCESS_NEW_ARTICLE, + '' ), - EditPage::AS_SUCCESS_NEW_ARTICLE, - "", - "expected registered MediaWiki: page being created even if empty" - )->doDeleteArticleReal( 'EditPageTest_testCreatePage' ); - - $this->assertEdit( - 'MediaWiki:Ipb-default-expiry', - null, - 'UTSysop', - array( - 'wpTextbox1' => "", + array( 'expected registered MediaWiki: page whose default content is empty not being created if empty', + 'MediaWiki:Ipb-default-expiry', + 'UTSysop', + '', + EditPage::AS_BLANK_ARTICLE, + '' ), - EditPage::AS_BLANK_ARTICLE, - "", - "expected registered MediaWiki: page whose default content is empty not being created if empty" - ); - - $this->assertEdit( - 'MediaWiki:January', - null, - 'UTSysop', - array( - 'wpTextbox1' => "January", + array( 'expected MediaWiki: page not being created if text equals default message', + 'MediaWiki:January', + 'UTSysop', + 'January', + EditPage::AS_BLANK_ARTICLE, + null + ), + array( 'expected empty article being created', + 'EditPageTest_testCreatePage', + null, + '', + EditPage::AS_SUCCESS_NEW_ARTICLE, + '', + true ), - EditPage::AS_BLANK_ARTICLE, - null, - "expected MediaWiki: page not being created if text equals default message" ); + } - $this->assertEdit( - 'EditPageTest_testCreatePage', - null, - null, - array( - 'wpTextbox1' => "", - 'wpIgnoreBlankArticle' => 1, - ), - EditPage::AS_SUCCESS_NEW_ARTICLE, - "", - "expected empty article being created" - )->doDeleteArticleReal( 'EditPageTest_testCreatePage' ); + /** + * @dataProvider provideCreatePages + * @covers EditPage + */ + public function testCreatePage( $desc, $pageTitle, $user, $editText, $expectedCode, $expectedText, $ignoreBlank = false ) { + $edit = array( 'wpTextbox1' => $editText ); + if ( $ignoreBlank ) { + $edit['wpIgnoreBlankArticle'] = 1; + } + + $page = $this->assertEdit( $pageTitle, null, $user, $edit, $expectedCode, $expectedText, $desc ); + + if ( $expectedCode != EditPage::AS_BLANK_ARTICLE ) { + $page->doDeleteArticleReal( $pageTitle ); + } } public function testUpdatePage() {