Add a mechanism to parserTests when run in --compare or --record mode, to give information about
a test's history. This may help to differentiate tests that have never passed, versus new regressions.
Also for a regression the range of dates and SVN version numbers in which it first appeared will be
given, which may help isolate the cause of the regression; equally fixed tests will show a range
to indicate when the test was fixed.
Here is an example of the output (using a parserTests.txt modified specifically to cause all
the conditions to occur) :
---------------------------------------------------------------------------------------
root@bling:/var/www/hosts/mediawiki/wiki# php maintenance/parserTests.php --compare --quick --quiet --color=no
This is MediaWiki version 1.10alpha (
r19799).
Reading tests from "maintenance/parserTests.txt"...
This is dvips(k) 5.95a Copyright 2005 Radical Eye Software (www.radicaleye.com)
' TeX output 2007.02.06:0630' ->
<tex.pro><texps.pro>. <cmr12.pfb>[1]
Reading tests from "../extensions/Cite/citeParserTests.txt"...
Reading tests from "../extensions/LabeledSectionTransclusion/lstParserTests.txt"...
1 previously failing test(s) now PASSING! :)
* URL-encoding in URL functions (single parameter) [Fixed between 05-Feb-2007 23:58:17, 1.10alpha (
r19799) and 06-Feb-2007 06:30:34, 1.10alpha (
r19799)]
1 previously PASSING test(s) removed o_O
* Prevent conversion of text with -{}- tags (language variants) [First recorded appearance: 02-Jan-2007 04:30:32, 1.9alpha (
r18762)]
1 new PASSING test(s) :)
* Fake passing test [Has never failed]
1 previously passing test(s) now FAILING! :(
* Plain link to URL [Introduced between 05-Feb-2007 23:58:17, 1.10alpha (
r19799) and 06-Feb-2007 06:30:34, 1.10alpha (
r19799)]
1 previously FAILING test(s) removed O_o
* TODO: Link containing double-single-quotes '' (
bug 4598) [First recorded appearance: 15-Nov-2006 02:53:34, 1.9alpha (
r17686)]
1 new FAILING test(s) :(
* Blah blah fake test [Has never passed]
18 still FAILING test(s) :(
* URL-encoding in URL functions (multiple parameters) [Has never passed]
* TODO: Table security: embedded pipes (
http://mail.wikipedia.org/pipermail/wikitech-l/2006-April/034637.html) [Has never passed]
* TODO: message transform: <noinclude> in transcluded template (
bug 4926) [Has never passed]
* TODO: message transform: <onlyinclude> in transcluded template (
bug 4926) [Has never passed]
* TODO: HTML bullet list, unclosed tags (
bug 5497) [Has never passed]
* TODO: HTML ordered list, unclosed tags (
bug 5497) [Has never passed]
* TODO: HTML nested bullet list, open tags (
bug 5497) [Has never passed]
* TODO: HTML nested ordered list, open tags (
bug 5497) [Has never passed]
* TODO: Inline HTML vs wiki block nesting [Has never passed]
* TODO: Mixing markup for italics and bold [Has never passed]
* TODO: 5 quotes, code coverage +1 line [Has never passed]
* TODO: dt/dd/dl test [Has never passed]
* TODO: Images with the "|" character in the comment [Has never passed]
* TODO: Parents of subpages, two levels up, without trailing slash or name. [Has never passed]
* TODO: Parents of subpages, two levels up, with lots of extra trailing slashes. [Has never passed]
* Blank ref followed by ref with content [Introduced between 31-Jan-2007 23:52:43, 1.10alpha (
r19702) and 05-Feb-2007 23:58:17, 1.10alpha (
r19799)]
* Regression: non-blank ref "0" followed by ref with content [Introduced between 31-Jan-2007 23:52:43, 1.10alpha (
r19702) and 05-Feb-2007 23:58:17, 1.10alpha (
r19799)]
* Regression sanity check: non-blank ref "1" followed by ref with content [Introduced between 31-Jan-2007 23:52:43, 1.10alpha (
r19702) and 05-Feb-2007 23:58:17, 1.10alpha (
r19799)]
Passed 509 of 529 tests (96.22%)... 20 tests failed!
root@bling:/var/www/hosts/mediawiki/wiki#
---------------------------------------------------------------------------------------
Lastly please note that this is my first play with the MW database API, so if there are better
ways of doing any of the database query stuff than in this patch, then please don't be shy
about telling me how.