https://bugzilla.wikimedia.org/show_bug.cgi?id=33663

--- Comment #11 from Dan Nessett <dness...@yahoo.com> 2012-01-18 21:34:49 UTC 
---
Things are getting worse. The make safe tests now throw an MW exception
(attached Make Safe r109424.txt). Surprisingly, this actually gives a hint to
what may be going wrong.

I instrumented TestSuit.php (attached TestSuite.php.modified) to print out
$wgLanguageCode on each test run. When I run make safe, its value changes to
"zh" on the 429th ParserTest (attached Full Safe Tests Run.txt) and stays that
way for the rest of the run. I couldn't figure out why until I looked at the
incomplete tests. The 20th incomplete test changes the language to "zh" and
then fails after 1 second. So, my guess is there is no proper unwinding of
incomplete tests and they leave globals in a non-initialized state.

I then looked at the first incomplete test. It is the first test run
(ArticleTablesTest::testbug14404). It times out after 1 second. So, there is
the distinct possibility that globals are being corrupted by the first test and
this problem propagates through the whole run.

This is semi-confirmed when I ran only the parser tests, i.e., ./phpunit.php
--group Parser (attached Parser Tests Only Run.txt). All tests pass and
$wgLanguageCode remains at "en" through out the run.

I don't how to address the problem of tests aborting and corrupting globals,
but I seem to recall phpunit has an option that saves and restores there
values. Perhaps that option isn't being used because it would lengthen the time
it takes to run the tests.

-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to