wiki.techinc.nl/tests/phpunit
Máté Szabó b9a7704e54 auth: Split TemporaryPasswordPrimaryAuthenticationProviderTest cases
Why:

- TemporaryPasswordPrimaryAuthenticationProviderTest currently combines
  multiple test cases within a single test method, leading to
  duplication and making the tests harder to grok.

What:

- Split the test cases within the test class to use either data
  providers or separate methods where the inputs cannot be provided via
  a data provider.
- Make getProvider() stateless and initialize the $manager and $validity
  fields unconditionally via a setup hook to avoid confusing null errors
  if attempting to manipulate these fields prior to obtaining a provider
  instance.

Bug: T328718
Change-Id: I3e53d06ec5bde6a8f842f5caed5cdbad883f7afd
2024-09-02 16:52:23 +02:00
..
data Test checkComposerLockUpToDate.php 2024-08-29 20:18:39 +00:00
docs
includes auth: Split TemporaryPasswordPrimaryAuthenticationProviderTest cases 2024-09-02 16:52:23 +02:00
integration/includes Test checkComposerLockUpToDate.php 2024-08-29 20:18:39 +00:00
maintenance Merge "Start on tests for install.php" 2024-08-30 20:17:55 +00:00
mocks Merge "Use variable-length argument lists instead of func_get_args()" 2024-08-18 10:28:17 +00:00
structure Fix specifying messages with params as arrays in API documentation 2024-08-21 13:26:02 +00:00
suites tests: Make use of ??= and ?? operators in various tests 2024-08-15 11:44:46 +02:00
tests tests: Make use of upstream NullLogger in tests 2024-08-15 11:58:13 +02:00
unit utils: Add missing documentation to class properties 2024-09-01 14:40:01 +00:00
bootstrap.common.php
bootstrap.integration.php
bootstrap.maintenance.php
bootstrap.php Add MediaWiki\Registration namespace to registration classes 2024-08-10 10:08:22 +00:00
DynamicPropertyTestHelper.php tests: Update @since tags for backports 2024-04-08 16:09:42 +01:00
getPHPUnitExtensionsAndSkins.php Add MediaWiki\Registration namespace to registration classes 2024-08-10 10:08:22 +00:00
HamcrestPHPUnitIntegration.php
MediaWikiCoversValidator.php
MediaWikiDeprecatedConfigPHPUnitExtension.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php tests: Remove deprecated MediaWikiIntegrationTestCase::addCoreDBData 2024-08-25 23:16:07 +02:00
MediaWikiLangTestCase.php Use MediaWikiIntegrationTestCase::getConfVar in tests 2024-08-06 12:52:34 +00:00
MediaWikiLoggerPHPUnitExtension.php
MediaWikiPHPUnitResultPrinter.php
MediaWikiTeardownPHPUnitExtension.php
MediaWikiTestCaseTrait.php Merge "tests: Disallow using setFakeTime() in PHPUnit data providers" 2024-08-20 22:43:19 +00:00
MediaWikiUnitTestCase.php Add MediaWiki\Registration namespace to registration classes 2024-08-10 10:08:22 +00:00
MWTestDox.php
phpunit.php Add MediaWiki\Registration namespace to registration classes 2024-08-10 10:08:22 +00:00
README.md
ResourceLoaderTestCase.php Codex: Allow a local development version to be used 2024-08-22 17:20:24 -07:00
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