summaryrefslogtreecommitdiff
path: root/tests/phpunit/tests/MediaWikiTestCaseTest.php
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@sbcglobal.net>2016-05-01 15:17:42 -0400
committerLuke Shumaker <lukeshu@sbcglobal.net>2016-05-01 15:17:42 -0400
commitf7d4cf9ed0ae68fec630d14e8f6aade38e49f036 (patch)
treea730c57badbe0e2f0f064ca2006c82d4b6ed54ea /tests/phpunit/tests/MediaWikiTestCaseTest.php
parentaee35e4a93d105024bcae947cd8b16c962191f5c (diff)
parent5d1e7dd0ccda0984ccf3e8e3d0f88ac888b05819 (diff)
Merge commit '5d1e7'
Diffstat (limited to 'tests/phpunit/tests/MediaWikiTestCaseTest.php')
-rw-r--r--tests/phpunit/tests/MediaWikiTestCaseTest.php77
1 files changed, 77 insertions, 0 deletions
diff --git a/tests/phpunit/tests/MediaWikiTestCaseTest.php b/tests/phpunit/tests/MediaWikiTestCaseTest.php
new file mode 100644
index 00000000..2846fde0
--- /dev/null
+++ b/tests/phpunit/tests/MediaWikiTestCaseTest.php
@@ -0,0 +1,77 @@
+<?php
+
+/**
+ * @covers MediaWikiTestCase
+ * @author Adam Shorland
+ */
+class MediaWikiTestCaseTest extends MediaWikiTestCase {
+
+ const GLOBAL_KEY_EXISTING = 'MediaWikiTestCaseTestGLOBAL-Existing';
+ const GLOBAL_KEY_NONEXISTING = 'MediaWikiTestCaseTestGLOBAL-NONExisting';
+
+ public static function setUpBeforeClass() {
+ parent::setUpBeforeClass();
+ $GLOBALS[self::GLOBAL_KEY_EXISTING] = 'foo';
+ }
+
+ public static function tearDownAfterClass() {
+ parent::tearDownAfterClass();
+ unset( $GLOBALS[self::GLOBAL_KEY_EXISTING] );
+ }
+
+ /**
+ * @covers MediaWikiTestCase::setMwGlobals
+ * @covers MediaWikiTestCase::tearDown
+ */
+ public function testSetGlobalsAreRestoredOnTearDown() {
+ $this->setMwGlobals( self::GLOBAL_KEY_EXISTING, 'bar' );
+ $this->assertEquals(
+ 'bar',
+ $GLOBALS[self::GLOBAL_KEY_EXISTING],
+ 'Global failed to correctly set'
+ );
+
+ $this->tearDown();
+
+ $this->assertEquals(
+ 'foo',
+ $GLOBALS[self::GLOBAL_KEY_EXISTING],
+ 'Global failed to be restored on tearDown'
+ );
+ }
+
+ /**
+ * @covers MediaWikiTestCase::stashMwGlobals
+ * @covers MediaWikiTestCase::tearDown
+ */
+ public function testStashedGlobalsAreRestoredOnTearDown() {
+ $this->stashMwGlobals( self::GLOBAL_KEY_EXISTING );
+ $GLOBALS[self::GLOBAL_KEY_EXISTING] = 'bar';
+ $this->assertEquals(
+ 'bar',
+ $GLOBALS[self::GLOBAL_KEY_EXISTING],
+ 'Global failed to correctly set'
+ );
+
+ $this->tearDown();
+
+ $this->assertEquals(
+ 'foo',
+ $GLOBALS[self::GLOBAL_KEY_EXISTING],
+ 'Global failed to be restored on tearDown'
+ );
+ }
+
+ /**
+ * @covers MediaWikiTestCase::stashMwGlobals
+ */
+ public function testExceptionThrownWhenStashingNonExistentGlobals() {
+ $this->setExpectedException(
+ 'Exception',
+ 'Global with key ' . self::GLOBAL_KEY_NONEXISTING . ' doesn\'t exist and cant be stashed'
+ );
+
+ $this->stashMwGlobals( self::GLOBAL_KEY_NONEXISTING );
+ }
+
+}