summaryrefslogtreecommitdiff
path: root/tests/phpunit/bootstrap.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/phpunit/bootstrap.php')
-rw-r--r--tests/phpunit/bootstrap.php36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/phpunit/bootstrap.php b/tests/phpunit/bootstrap.php
new file mode 100644
index 00000000..121aade9
--- /dev/null
+++ b/tests/phpunit/bootstrap.php
@@ -0,0 +1,36 @@
+<?php
+/**
+ * Bootstrapping for MediaWiki PHPUnit tests
+ * This file is included by phpunit and is NOT in the global scope.
+ *
+ * @file
+ */
+
+if ( !defined( 'MW_PHPUNIT_TEST' ) ) {
+ echo <<<EOF
+You are running these tests directly from phpunit. You may not have all globals correctly set.
+Running phpunit.php instead is recommended.
+EOF;
+ require_once __DIR__ . "/phpunit.php";
+}
+
+class MediaWikiPHPUnitBootstrap {
+
+ public function __construct() {
+ wfProfileIn( __CLASS__ );
+ }
+
+ public function __destruct() {
+ wfProfileOut( __CLASS__ );
+
+ // Return to real wiki db, so profiling data is preserved
+ MediaWikiTestCase::teardownTestDB();
+
+ // Log profiling data, e.g. in the database or UDP
+ wfLogProfilingData();
+ }
+
+}
+
+// This will be destructed after all tests have been run
+$mediawikiPHPUnitBootstrap = new MediaWikiPHPUnitBootstrap();