summaryrefslogtreecommitdiff
path: root/bin/wiki/vendor/addwiki/mediawiki-datamodel/tests/PageTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'bin/wiki/vendor/addwiki/mediawiki-datamodel/tests/PageTest.php')
-rw-r--r--bin/wiki/vendor/addwiki/mediawiki-datamodel/tests/PageTest.php48
1 files changed, 48 insertions, 0 deletions
diff --git a/bin/wiki/vendor/addwiki/mediawiki-datamodel/tests/PageTest.php b/bin/wiki/vendor/addwiki/mediawiki-datamodel/tests/PageTest.php
new file mode 100644
index 00000000..cbc31c8c
--- /dev/null
+++ b/bin/wiki/vendor/addwiki/mediawiki-datamodel/tests/PageTest.php
@@ -0,0 +1,48 @@
+<?php
+
+namespace Mediawiki\DataModel\Test;
+
+use Mediawiki\DataModel\Page;
+use Mediawiki\DataModel\PageIdentifier;
+
+/**
+ * @covers \Mediawiki\DataModel\Page
+ * @author Addshore
+ */
+class PageTest extends \PHPUnit_Framework_TestCase {
+
+ /**
+ * @dataProvider provideValidConstruction
+ */
+ public function testValidConstruction( $pageIdentifier, $revisions ) {
+ $page = new Page( $pageIdentifier, $revisions );
+ $this->assertEquals( $pageIdentifier, $page->getPageIdentifier() );
+ if( is_null( $revisions ) ) {
+ $this->assertInstanceOf( 'Mediawiki\DataModel\Revisions', $page->getRevisions() );
+ } else {
+ $this->assertEquals( $revisions, $page->getRevisions() );
+ }
+ }
+
+ public function provideValidConstruction() {
+ return array(
+ array( null, null ),
+ array( null, $this->newMockRevisions() ),
+ array( new PageIdentifier( $this->newMockTitle(), 1 ), $this->newMockRevisions() ),
+ array( new PageIdentifier( $this->newMockTitle(), 123 ), null ),
+ );
+ }
+
+ private function newMockTitle() {
+ return $this->getMockBuilder( '\Mediawiki\DataModel\Title' )
+ ->disableOriginalConstructor()
+ ->getMock();
+ }
+
+ private function newMockRevisions() {
+ return $this->getMockBuilder( '\Mediawiki\DataModel\Revisions' )
+ ->disableOriginalConstructor()
+ ->getMock();
+ }
+
+} \ No newline at end of file