wiki.techinc.nl/tests/phpunit
Thalia 077e3057ff Extend ContributionsSpecialPage from SpecialDeletedContributions
Why:

* Special:DeletedContributions is built entirely separately
  from Special:Contributions and lacks many of the features
  that Special:Contributions has, such as search form filters.
* As part of the temporary accounts project, a special page
  showing deleted contributions for temporary accounts was
  added via the CheckUser extension (T363362), which has
  feature parity with Special:Contributions. This was achieved
  by factoring out abstract base classes for contributions
  pages.
* SpecialDeletedContributions should be updated to make use of
  this shared functionality, to avoid confusion for users
  switching between these various pages.

What:

* Update SpecialDeletedContributions to extend
  ContributionsSpecialPage.
* Update ContributionsSpecialPage::getUserLinks to be a
  protected instance method instead of a public static method.
  This can just be done, since it was only made public to be
  called from SpecialDeletedContributions, and there are no
  other callers.
* Build a link to Special:Contributions instead of
  Special:DeletedContributions from SpecialDeletedContributions
  by overriding ::getUserLinks.

Bug: T370438
Change-Id: Ica817be5c5e078b88c9b3157b54d0dbf997e8893
2024-08-06 12:00:48 +01:00
..
data [JsonCodec] Establish forward-compatibility with future codec 2024-06-14 15:31:29 -04:00
docs
includes Extend ContributionsSpecialPage from SpecialDeletedContributions 2024-08-06 12:00:48 +01:00
integration/includes Merge "Replace gettype() with get_debug_type() in exception messages" 2024-08-04 21:18:48 +00:00
maintenance Merge "Test purgeExpiredUserrights.php" 2024-08-04 00:22:15 +00:00
mocks Make MockHttpTrait::setService() compatible with MediaWikiUnitTestCase 2024-07-29 16:31:41 +02:00
structure getParamSettings prohibited from using array type 2024-07-25 10:09:02 +00:00
suites tests: Use namespaced classes (@covers) 2024-06-14 00:15:40 +02:00
tests Add namespace to the root classes of ObjectCache 2024-07-10 00:14:54 +03:30
unit Stats: add unit helpers functions to TimingMetric 2024-08-04 23:57:59 +00:00
bootstrap.common.php
bootstrap.integration.php
bootstrap.maintenance.php
bootstrap.php
DynamicPropertyTestHelper.php
getPHPUnitExtensionsAndSkins.php
HamcrestPHPUnitIntegration.php
MediaWikiCoversValidator.php
MediaWikiDeprecatedConfigPHPUnitExtension.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php Make MockHttpTrait::setService() compatible with MediaWikiUnitTestCase 2024-07-29 16:31:41 +02:00
MediaWikiLangTestCase.php
MediaWikiLoggerPHPUnitExtension.php
MediaWikiPHPUnitResultPrinter.php
MediaWikiTeardownPHPUnitExtension.php
MediaWikiTestCaseTrait.php tests: Let FakeQqxMessageLocalizer handle numParam() 2024-06-25 17:23:24 +00:00
MediaWikiUnitTestCase.php tests: Use namespaced classes (2) 2024-06-13 23:21:02 +02:00
MWTestDox.php
phpunit.php
README.md
ResourceLoaderTestCase.php
suite.xml
TestSelectQueryBuilder.php tests: Add TestSelectQueryBuilder::assertRowValue 2024-05-08 23:13:19 +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