wiki.techinc.nl/tests/phpunit
Daimona Eaytoy 35f8028e6e phpunit: Introduce TypeDefUnitTestCase
All MediaWiki-specific tests should ideally inherit from either
MediaWikiUnitTestCase or MediaWikiIntegrationTestCase, to ensure that
the environment is set up properly, and that the required restrictions
(such as not being able to access config in unit tests) are in place.

Introduce TypeDefUnitTestCase as a base class for unit tests covering
MediaWiki-specific TypeDef classes, akin to TypeDefIntegrationTestCase.

Also fix `@covers` annotation to use fully qualified class names.

Change-Id: I680b9f608175edda785fbf79183143a57abacecb
2023-07-15 14:56:34 +00:00
..
data Add 1.40 snapshot to sqlite db tests 2023-05-26 11:34:55 +02:00
docs
includes Merge "Html: Move encodeJsVar() + encodeJsCall() from Xml" 2023-07-14 18:03:41 +00:00
integration/includes Merge "phpunit: Avoid hardcoded URL in UserRightsProxyTest" 2023-07-15 14:15:47 +00:00
maintenance tests: Resolve maintenance phpunit filename deprecation errors 2023-07-09 22:34:35 +02:00
mocks Fix TestLocalisationCache being way to small 2023-07-07 20:15:03 +00:00
structure phpunit: Sync phpunit.xml.dist with tests/phpunit/suite.xml 2023-07-14 20:59:42 +00:00
suites Replace usages of deprecated MWException 2023-06-06 17:05:32 +02:00
tests Replace array_keys in foreach to use $_ as value instead 2023-07-10 02:53:52 +00:00
unit phpunit: Introduce TypeDefUnitTestCase 2023-07-15 14:56:34 +00:00
bootstrap.common.php phpunit: More improvements for PHPUnit bootstrap files 2023-07-13 00:48:31 +02:00
bootstrap.integration.php phpunit: Streamline loading of Setup.php 2023-07-13 03:21:45 +02:00
bootstrap.maintenance.php phpunit: Improve PHPUnit bootstrap files 2023-07-13 00:46:13 +02:00
bootstrap.php phpunit: Streamline loading of Setup.php 2023-07-13 03:21:45 +02:00
HamcrestPHPUnitIntegration.php
MediaWikiCoversValidator.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php phpunit: Streamline loading of Setup.php 2023-07-13 03:21:45 +02:00
MediaWikiLangTestCase.php Replace usages of deprecated MWException 2023-06-06 17:05:32 +02:00
MediaWikiLoggerPHPUnitExtension.php
MediaWikiPHPUnitResultPrinter.php
MediaWikiTeardownPHPUnitExtension.php phpunit: Use PHPUnit hooks to tear down the test DB after the last test 2023-07-13 01:10:11 +02:00
MediaWikiTestCaseTrait.php phpunit: Move assertArraySubmapSame() to MediaWikiTestCaseTrait 2023-05-01 22:19:21 +00:00
MediaWikiUnitTestCase.php
MWTestDox.php
phpunit.php phpunit: Deprecate tests/phpunit/phpunit.php script 2023-07-12 19:28:39 +00:00
README.md
ResourceLoaderTestCase.php ResourceLoader: Add structure test for ResourceLoader::respond() 2023-04-10 18:18:54 -07:00
suite.xml phpunit: Use PHPUnit hooks to tear down the test DB after the last test 2023-07-13 01:10:11 +02:00
TestSelectQueryBuilder.php Migrate assertSelect() to SelectQueryBuilder 2023-06-28 09:03:58 +10:00

MediaWiki PHPUnit tests

WARNING: Integration tests may be destructive and alter or remove parts of your local database. We try to use temporary tables where possible, but you must never run tests on a production server or on a wiki where you don't want to lose data.

Running tests

If you haven't already, run composer update (specifically without --no-dev) in the MediaWiki core directory. This will install PHPUnit.

To read about how to run specific tests, refer to:

https://www.mediawiki.org/wiki/Manual:PHP_unit_testing/Running_the_tests

Writing tests

A guide to writing PHPUnit tests for MediaWiki can be found at:

https://www.mediawiki.org/wiki/Manual:PHP_unit_testing