wiki.techinc.nl/tests/phpunit
daniel 9638fa314a Introduce entry point classes for media files.
This moves a code out of file scope into classes to make it
testable. The code is left in the same structure as it was before,
global functions have been converted into methods on the new
ThumbnailEntryPoint and Thumbnail404EntryPoint classes.

This test introduces comprehensive phpunit tests covering all functional
code paths in ThumbnailEntryPoint. This is intended to support
refactoring of this code.

Change-Id: I459abc7b11d0ab4ee682a863c9525a945048296f
2024-03-30 21:14:05 +01:00
..
data ResourceLoader: Fix regression of color mapping in Less.php 2024-02-25 23:33:12 +03:00
docs
includes Introduce entry point classes for media files. 2024-03-30 21:14:05 +01:00
integration/includes Merge "REST: Log parsoid errors" 2024-02-29 16:29:51 +00:00
maintenance maintenance: show broken replicas in getLagTimes 2024-02-27 22:52:14 +01:00
mocks Introduce entry point classes for media files. 2024-03-30 21:14:05 +01:00
structure Clean up tests 2024-02-12 09:25:25 +01:00
suites tests: Fix @covers and @coversDefaultClass to have leading \ 2024-02-16 22:43:56 +00:00
tests tests: Fix @covers and @coversDefaultClass to have leading \ 2024-02-16 22:43:56 +00:00
unit Merge "handler: Throw on unsupported body" 2024-02-29 12:39:30 +00:00
bootstrap.common.php Deprecate $wgCommandLineMode 2024-01-02 22:21:50 +01:00
bootstrap.integration.php phpunit: Deprecate suite.xml and composer phpunit:entrypoint 2023-12-21 08:22:35 +00:00
bootstrap.maintenance.php
bootstrap.php phpunit: Do not crash when paratest options are passed in 2024-02-25 20:06:18 +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
MediaWikiDeprecatedConfigPHPUnitExtension.php phpunit: Deprecate suite.xml and composer phpunit:entrypoint 2023-12-21 08:22:35 +00:00
MediaWikiGroupValidator.php Make isTestInDatabaseGroup static and case-sensitive 2023-08-15 21:01:03 +00:00
MediaWikiIntegrationTestCase.php rdbms: replace truncate() with simpler truncateTable() method 2024-02-20 09:00:43 -08:00
MediaWikiLangTestCase.php MediaWikiLangTestCase: Avoid global variable 2023-10-12 12:56:55 +00:00
MediaWikiLoggerPHPUnitExtension.php
MediaWikiPHPUnitResultPrinter.php
MediaWikiTeardownPHPUnitExtension.php
MediaWikiTestCaseTrait.php build: Upgrade phpunit to 9.6.16 2024-02-25 00:04:54 +00:00
MediaWikiUnitTestCase.php Namespace remaining files under includes/deferred 2023-11-22 10:08:53 -05:00
MWTestDox.php
phpunit.php Deprecate $wgCommandLineMode 2024-01-02 22:21:50 +01:00
README.md
ResourceLoaderTestCase.php tests: Namespace ResourceLoaderTestCase and friends 2024-02-16 21:32:22 +00:00
suite.xml phpunit: Deprecate suite.xml and composer phpunit:entrypoint 2023-12-21 08:22:35 +00:00
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