Move ResultWrapper subclasses to Rdbms
[mediawiki.git] / tests / phpunit / includes / page / ArticleTest.php
blob7d0813d1419bd16cdbcd979b0bcc2c8ebfa5f700
1 <?php
3 class ArticleTest extends MediaWikiTestCase {
5 /**
6 * @var Title
7 */
8 private $title;
9 /**
10 * @var Article
12 private $article;
14 /** creates a title object and its article object */
15 protected function setUp() {
16 parent::setUp();
17 $this->title = Title::makeTitle( NS_MAIN, 'SomePage' );
18 $this->article = new Article( $this->title );
21 /** cleanup title object and its article object */
22 protected function tearDown() {
23 parent::tearDown();
24 $this->title = null;
25 $this->article = null;
28 /**
29 * @covers Article::__get
31 public function testImplementsGetMagic() {
32 $this->assertEquals( false, $this->article->mLatest, "Article __get magic" );
35 /**
36 * @depends testImplementsGetMagic
37 * @covers Article::__set
39 public function testImplementsSetMagic() {
40 $this->article->mLatest = 2;
41 $this->assertEquals( 2, $this->article->mLatest, "Article __set magic" );
44 /**
45 * @covers Article::__get
46 * @covers Article::__set
48 public function testGetOrSetOnNewProperty() {
49 $this->article->ext_someNewProperty = 12;
50 $this->assertEquals( 12, $this->article->ext_someNewProperty,
51 "Article get/set magic on new field" );
53 $this->article->ext_someNewProperty = -8;
54 $this->assertEquals( -8, $this->article->ext_someNewProperty,
55 "Article get/set magic on update to new field" );
58 /**
59 * Checks for the existence of the backwards compatibility static functions
60 * (forwarders to WikiPage class)
62 * @covers Article::selectFields
63 * @covers Article::onArticleCreate
64 * @covers Article::onArticleDelete
65 * @covers Article::onArticleEdit
67 public function testStaticFunctions() {
68 $this->hideDeprecated( 'Article::selectFields' );
70 $this->assertEquals( WikiPage::selectFields(), Article::selectFields(),
71 "Article static functions" );
72 $this->assertEquals( true, is_callable( "Article::onArticleCreate" ),
73 "Article static functions" );
74 $this->assertEquals( true, is_callable( "Article::onArticleDelete" ),
75 "Article static functions" );
76 $this->assertEquals( true, is_callable( "ImagePage::onArticleEdit" ),
77 "Article static functions" );