summaryrefslogtreecommitdiff
path: root/tests/testHelpers.inc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/testHelpers.inc')
-rw-r--r--tests/testHelpers.inc33
1 files changed, 31 insertions, 2 deletions
diff --git a/tests/testHelpers.inc b/tests/testHelpers.inc
index 02fcf24c..88e5885b 100644
--- a/tests/testHelpers.inc
+++ b/tests/testHelpers.inc
@@ -21,7 +21,36 @@
* @ingroup Testing
*/
-class TestRecorder {
+/**
+ * Interface to record parser test results.
+ *
+ * The ITestRecorder is a very simple interface to record the result of
+ * MediaWiki parser tests. One should call start() before running the
+ * full parser tests and end() once all the tests have been finished.
+ * After each test, you should use record() to keep track of your tests
+ * results. Finally, report() is used to generate a summary of your
+ * test run, one could dump it to the console for human consumption or
+ * register the result in a database for tracking purposes.
+ *
+ * @since 1.22
+ */
+interface ITestRecorder {
+
+ /** Called at beginning of the parser test run */
+ public function start();
+
+ /** Called after each test */
+ public function record( $test, $result );
+
+ /** Called before finishing the test run */
+ public function report();
+
+ /** Called at the end of the parser test run */
+ public function end();
+
+}
+
+class TestRecorder implements ITestRecorder {
var $parent;
var $term;
@@ -481,7 +510,7 @@ class TestFileIterator implements Iterator {
return true;
}
- if ( isset ( $this->sectionData[$this->section] ) ) {
+ if ( isset( $this->sectionData[$this->section] ) ) {
throw new MWException( "duplicate section '$this->section' at line {$this->lineNum} of $this->file\n" );
}