Last modified: 2012-11-22 08:29:47 UTC
There seems to be a bug in the Jenkins-tests because the "MediaWiki-Tests-Databaseless"-test (options: "--exclude-group Database,Broken,ParserFuzz,Stub") runs my new PHPUnit-test (gerrit:31067) though this test is in the Database-group. The url of the Jenkins-log is https://integration.mediawiki.org/ci/job/MediaWiki-GIT-Fetching/7066/
https://gerrit.wikimedia.org/r/#/c/31067/ Seems to me that test class extending MediaWikiLangTestCase do not honor the '@group Database'.
The warning from the Databaseless build at https://integration.mediawiki.org/ci/job/MediaWiki-Tests-Databaseless/8564/console : There was 1 failure: 1) Warning The data provider specified for LogFormatterTest::testLogParamsType is invalid.DB connection error: Access denied for user 'wikiuser'@'localhost' (using password: NO) (localhost) /var/lib/jenkins/jobs/MediaWiki-GIT-Fetching/workspace/tests/phpunit/MediaWikiPHPUnitCommand.php:45/var/lib/jenkins/jobs/MediaWiki-GIT-Fetching/workspace/tests/phpunit/phpunit.php:107
This is caused by the PHPUnit data provider using calls that requires a database connection. The database providers seems to be executed before filtering tests.
My problem I have fixed (using separate tests for each type) but I think we keep the bug open for fixing the PHPUnit-bug.
This was caused by a dataProvider attempting to use a database connection. Since providers are run before filtering, that ends up throwing an errors when no DB is set (which is the case in Databaseless Jenkins job.