wiki.techinc.nl/tests/phpunit
Brian Wolff 024915bbcd Separate RevisionOutputCache::makeParserOutputKey from no revid case
If the revision id is null, the item should not be cachable.
However, you still need a poolcounter work key for such cases,
and this method was used for both. This is confusing and seems
dangerous, so split into two methods, one where a revision id
is required, and another one where it is optional that should
only be used when it is not for a cache key.

This also fixes a warning about null revId on php 8.1 in tests.

Bug: T313663
Change-Id: Id685caeecf21d058bfd8446d9b5e21f0f11e0177
2022-09-09 18:24:27 -07:00
..
data SVG Language selector should default to page language 2022-06-13 21:17:25 +00:00
docs
includes Separate RevisionOutputCache::makeParserOutputKey from no revid case 2022-09-09 18:24:27 -07:00
integration/includes rdbms: Drastically simplify Sqlite db tests 2022-08-08 14:38:20 +02:00
languages tests: Remove resetServiceForTesting after overrideConfigValues 2022-07-27 23:08:27 +02:00
maintenance rdbms: add getDomainChangeException() call to DBConnRef::tablePrefix() 2022-08-03 21:41:09 +00:00
mocks phpunit: Fix trivial dynamic property usages in tests 2022-07-29 01:59:23 +02:00
structure SettingsTest: check that the current config didn't trigger warnings. 2022-07-22 18:01:13 +02:00
suites phpunit: Fix trivial dynamic property usages in tests 2022-07-29 01:59:23 +02:00
tests rdbms: add getDomainChangeException() call to DBConnRef::tablePrefix() 2022-08-03 21:41:09 +00:00
unit rdbms: Stop accepting live connection in DBConnRef constructor 2022-08-08 18:11:31 +02:00
bootstrap.maintenance.php Revert "phpunit: Default to vendor/bin/phpunit, remove suites.xml" 2022-06-09 14:15:54 +00:00
bootstrap.php Collect autoloader info in ExtensionProcessor 2022-06-07 17:39:00 +02:00
HamcrestPHPUnitIntegration.php
LessFileCompilationTest.php tests: Fix types in documentation by adding use statements 2022-05-29 07:11:15 +00:00
MediaWikiCliOptions.php
MediaWikiCoversValidator.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php Merge "rdbms: add getDomainChangeException() call to DBConnRef::tablePrefix()" 2022-08-10 04:14:28 +00:00
MediaWikiLangTestCase.php
MediaWikiLoggerPHPUnitExtension.php phpunit: Fix trivial dynamic property usages in tests 2022-07-29 01:59:23 +02:00
MediaWikiPHPUnitResultPrinter.php phpunit: Restore default progress reporter and add MWTestDox option 2022-06-12 19:22:57 +00:00
MediaWikiTestCaseTrait.php Replace trivial usa of mock builder with createMock() shortcut 2022-07-15 16:43:48 +00:00
MediaWikiUnitTestCase.php Migrate use of ${var}-style string interpolation 2022-07-29 02:45:09 +02:00
MWTestDox.php phpunit: Restore default progress reporter and add MWTestDox option 2022-06-12 19:22:57 +00:00
phpunit.php Revert "phpunit: Default to vendor/bin/phpunit, remove suites.xml" 2022-06-09 14:15:54 +00:00
README.md
ResourceLoaderTestCase.php resourceloader: Decouple some internal constructor args 2022-06-02 18:27:33 +01:00
suite.xml phpunit.xml.dist: Align contents with suite.xml 2022-07-12 10:32:32 +02: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