summaryrefslogtreecommitdiffstats
path: root/3rdparty/simpletest/extensions/coverage/autocoverage.php
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/simpletest/extensions/coverage/autocoverage.php')
-rw-r--r--3rdparty/simpletest/extensions/coverage/autocoverage.php29
1 files changed, 29 insertions, 0 deletions
diff --git a/3rdparty/simpletest/extensions/coverage/autocoverage.php b/3rdparty/simpletest/extensions/coverage/autocoverage.php
new file mode 100644
index 00000000000..9fc961bf43a
--- /dev/null
+++ b/3rdparty/simpletest/extensions/coverage/autocoverage.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * @package SimpleTest
+ * @subpackage Extensions
+ */
+/**
+ * Include this in any file to start coverage, coverage will automatically end
+ * when process dies.
+ */
+require_once(dirname(__FILE__) .'/coverage.php');
+
+if (CodeCoverage::isCoverageOn()) {
+ $coverage = CodeCoverage::getInstance();
+ $coverage->startCoverage();
+ register_shutdown_function("stop_coverage");
+}
+
+function stop_coverage() {
+ # hack until i can think of a way to run tests first and w/o exiting
+ $autorun = function_exists("run_local_tests");
+ if ($autorun) {
+ $result = run_local_tests();
+ }
+ CodeCoverage::getInstance()->stopCoverage();
+ if ($autorun) {
+ exit($result ? 0 : 1);
+ }
+}
+?> \ No newline at end of file