wiki.techinc.nl/tests/phpunit
daniel df0744f402 Split setOriginalData( ... ) to more related setters for encapsulation
By splitting the setOriginalData methods into several setters, we remove
any knowledge about the structure of the request body from HTMLTransform.
It also allows us to be specific about which data to operate on.

This also removes the concept of page bundles from the public interface
of HTMLTransform. PageBundle objects are used only internally.

Change-Id: If97a74ce251f281b7d980928a01b764d6ec0d0a4
2022-08-25 18:40:26 +02:00
..
data SVG Language selector should default to page language 2022-06-13 21:17:25 +00:00
docs
includes Merge "tests: Change multiple calls from overrideConfigValue to overrideConfigValues" 2022-08-17 12:26:00 +00:00
integration/includes Split setOriginalData( ... ) to more related setters for encapsulation 2022-08-25 18:40:26 +02:00
languages tests: Change multiple calls from overrideConfigValue to overrideConfigValues 2022-08-17 12:08:50 +00:00
maintenance rdbms: add getDomainChangeException() call to DBConnRef::tablePrefix() 2022-08-03 21:41:09 +00:00
mocks Use native array_column() in tests instead of loops 2022-08-16 15:41:14 +02:00
structure tests: Change multiple calls from overrideConfigValue to overrideConfigValues 2022-08-17 12:08:50 +00: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 Merge "Use native array_column() in tests instead of loops" 2022-08-16 19:44:54 +00: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 Use str_starts_with/str_ends_with 2022-05-02 10:59:58 +03:00
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