wiki.techinc.nl/tests/phpunit
Alexander Vorwerk ecbaedbad2 Reapply "GrantsInfo service to replace MWGrants"
This patch adds a service as a replacement for MWGrants. This is done
as it allows proper dependency injection of used services and
configuration settings.

This was previously committed as Iac52dba15f and reverted because it
introduced recursive service instantiation.

To avoid this recursive service instantiantion all UI related methods
get moved to a new GrantsLocalization service, instead of the GrantsInfo
service.

Bug: T253077
Change-Id: Ib900bc424fc272ec709d272dcaff71398fa856f8
2021-09-18 08:52:22 +00:00
..
data resourceloader: Append newline to JavaScript only if missing 2021-08-28 12:25:11 +00:00
docs
includes Merge "Deprecate WikiPage methods replaced by DeletePage" 2021-09-16 21:01:54 +00:00
integration/includes Reapply "GrantsInfo service to replace MWGrants" 2021-09-18 08:52:22 +00:00
languages Cleanup mixed space/tab line indent 2021-09-04 00:52:31 +02:00
maintenance build: Updating dependencies 2021-07-22 03:36:05 +00:00
mocks Make UserDefTest a unit test 2021-09-13 23:55:51 -04:00
structure Merge "Structure test for all content models" 2021-09-13 16:12:50 +00:00
suites build: Updating dependencies 2021-07-22 03:36:05 +00:00
tests MockHttpTrait: support multiple MultiHttpClients 2021-08-12 11:30:14 -07:00
unit Reapply "GrantsInfo service to replace MWGrants" 2021-09-18 08:52:22 +00:00
bootstrap.maintenance.php
bootstrap.php
HamcrestPHPUnitIntegration.php
LessFileCompilationTest.php build: Updating dependencies 2021-07-22 03:36:05 +00:00
Makefile
MediaWikiCliOptions.php build: Updating dependencies 2021-07-22 03:36:05 +00:00
MediaWikiCoversValidator.php
MediaWikiGroupValidator.php
MediaWikiIntegrationTestCase.php Merge "MediaWikiIntegrationTestCase::getExistingTestPage: Don't assume NS0 is wikitext" 2021-09-16 20:34:55 +00:00
MediaWikiLangTestCase.php build: Updating dependencies 2021-07-22 03:36:05 +00:00
MediaWikiLoggerPHPUnitExtension.php
MediaWikiPHPUnitCommand.php build: Updating dependencies 2021-07-22 03:36:05 +00:00
MediaWikiPHPUnitResultPrinter.php build: Updating dependencies 2021-07-22 03:36:05 +00:00
MediaWikiTestCaseTrait.php
MediaWikiUnitTestCase.php build: Updating dependencies 2021-07-22 03:36:05 +00:00
phpunit.php
README
ResourceLoaderTestCase.php resourceloader: Fix debug mode for RL-to-RL cross-wiki module loads 2021-08-25 20:05:38 +00:00
run-tests.bat
suite.xml Remove PHPUnit hooks 2021-08-30 00:28:32 +02:00

== MediaWiki PHPUnit Tests ==

The unit and integration tests for MediaWiki are implemented using the PHPUnit testing
framework and require PHPUnit to run.


=== WARNING ===

Some of the integration tests are DESTRUCTIVE and WILL ALTER YOUR WIKI'S CONTENTS.

DO NOT RUN THESE TESTS ON A PRODUCTION SYSTEM OR ON ANY SYSTEM WHERE YOU NEED
TO RETAIN YOUR DATA.


== Installation ==

If you used composer to install MediaWiki's dependencies PHPUnit will already be available, unless
you explicitly specified the --no-dev flag during the install. In this case just run "composer update".

Otherwise follow the installation instructions in the
PHPUnit Manual at:

  https://phpunit.de/manual/current/en/installation.html


== Running tests ==

The tests are run from your operating system's command line.

Ensure that you are in the tests/phpunit directory of your MediaWiki
installation.


On Unix-like operating systems, the tests runs are controlled with a makefile.
Run command:

  make help

for a full list of options for running tests.


On Windows-family operating systems, run the 'run-tests.bat' batch file.


=== Writing tests ===

A guide to writing PHP unit tests for MediaWiki can be found at:

	https://www.mediawiki.org/wiki/Manual:PHP_unit_testing