wiki.techinc.nl/tests/phpunit
Ammarpad 42e166dd83 StatusValue: Allow passing arbitrary data to augment result
This allows extensions and hooks to pass around additional data
about the operation result arbitrarily to supplement value and errors.

When two StatusValue instances are to be merged, it's responsibility
of the caller to ensure either only one has this extra data or none,
but never both (since the type is unrestricted). If necessary, the
caller should merge them before invoking StatusValue::merge.

Bug: T326479
Change-Id: Ibe3f1f8b81bcfcb18551d3ca4cda464e4bdbcbce
2023-11-28 14:58:22 +01:00
..
data ResourceLoader: Preserve newlines in Vue templates in debug mode 2023-11-21 17:22:13 -08:00
docs
includes StatusValue: Allow passing arbitrary data to augment result 2023-11-28 14:58:22 +01:00
integration/includes Refactor HTMLRestrictionsField to allow more restrictions to be added 2023-11-23 16:01:50 +00:00
maintenance Follow-up 71ff05267: Stop writing to tablesUsed in tests, now unnecessary 2023-11-21 09:02:48 -05:00
mocks tests: Remove DummyServicesTrait::getDummyDBLoadBalancer 2023-11-22 13:11:15 -06:00
structure Follow-up 71ff05267: Stop writing to tablesUsed in tests, now unnecessary 2023-11-21 09:02:48 -05:00
suites phpunit: Make getPHPUnitExtensionsAndSkins run the UnitTestsList hook 2023-11-13 15:12:55 +01:00
tests Follow-up 71ff05267: Stop writing to tablesUsed in tests, now unnecessary 2023-11-21 09:02:48 -05:00
unit Merge "Refactor HTMLRestrictionsField to allow more restrictions to be added" 2023-11-23 17:21:06 +00:00
bootstrap.common.php
bootstrap.integration.php
bootstrap.maintenance.php
bootstrap.php phpunit: Make getPHPUnitExtensionsAndSkins run the UnitTestsList hook 2023-11-13 15:12:55 +01:00
DynamicPropertyTestHelper.php Introduce and use DynamicPropertyTestHelper 2023-11-03 13:50:53 -04:00
getPHPUnitExtensionsAndSkins.php phpunit: Make getPHPUnitExtensionsAndSkins run the UnitTestsList hook 2023-11-13 15:12:55 +01:00
HamcrestPHPUnitIntegration.php
MediaWikiCoversValidator.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php Replace MediaWikiIntegrationTestCase::$tablesUsed with automatic query tracking 2023-11-21 10:35:59 +11:00
MediaWikiLangTestCase.php MediaWikiLangTestCase: Avoid global variable 2023-10-12 12:56:55 +00:00
MediaWikiLoggerPHPUnitExtension.php
MediaWikiPHPUnitResultPrinter.php
MediaWikiTeardownPHPUnitExtension.php
MediaWikiTestCaseTrait.php
MediaWikiUnitTestCase.php Namespace remaining files under includes/deferred 2023-11-22 10:08:53 -05:00
MWTestDox.php
phpunit.php
README.md
ResourceLoaderTestCase.php Use $this->getServiceContainer() in tests 2023-10-17 18:40:46 +00:00
suite.xml
TestSelectQueryBuilder.php

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