Introduce basic SpecialEditWatchlistTest
authoraddshore <addshorewiki@gmail.com>
Thu, 24 Mar 2016 13:18:38 +0000 (13:18 +0000)
committeraddshore <addshorewiki@gmail.com>
Thu, 24 Mar 2016 13:27:03 +0000 (13:27 +0000)
Change-Id: I9f765c4183314850169f685abd242e979a79bd68

tests/phpunit/includes/specials/SpecialEditWatchlistTest.php [new file with mode: 0644]

diff --git a/tests/phpunit/includes/specials/SpecialEditWatchlistTest.php b/tests/phpunit/includes/specials/SpecialEditWatchlistTest.php
new file mode 100644 (file)
index 0000000..cd84d79
--- /dev/null
@@ -0,0 +1,50 @@
+<?php
+
+/**
+ * @author Addshore
+ *
+ * @group Database
+ *
+ * @covers SpecialEditWatchlist
+ */
+class SpecialEditWatchlistTest extends SpecialPageTestBase {
+
+       /**
+        * Returns a new instance of the special page under test.
+        *
+        * @return SpecialPage
+        */
+       protected function newSpecialPage() {
+               return new SpecialEditWatchlist();
+       }
+
+       public function testNotLoggedIn_throwsException() {
+               $this->setExpectedException( 'UserNotLoggedIn' );
+               $this->executeSpecialPage();
+       }
+
+       public function testRootPage_displaysExplanationMessage() {
+               $user = new TestUser( __METHOD__ );
+               list( $html, ) = $this->executeSpecialPage( '', null, 'qqx', $user->getUser() );
+               $this->assertContains( '(watchlistedit-normal-explain)', $html );
+       }
+
+       public function testClearPage_hasClearButtonForm() {
+               $user = new TestUser( __METHOD__ );
+               list( $html, ) = $this->executeSpecialPage( 'clear', null, 'qqx', $user->getUser() );
+               $this->assertRegExp(
+                       '/<form action=".*?Special:EditWatchlist\/clear" method="post" class="visualClear">/',
+                       $html
+               );
+       }
+
+       public function testEditRawPage_hasTitlesBox() {
+               $user = new TestUser( __METHOD__ );
+               list( $html, ) = $this->executeSpecialPage( 'raw', null, 'qqx', $user->getUser() );
+               $this->assertContains(
+                       '<textarea id="mw-input-wpTitles"',
+                       $html
+               );
+       }
+
+}