wiki.techinc.nl/tests/phpunit
Kunal Mehta f6644c07cb registration: Improve license-name validation
Our hardcoded enum list in the extension.json schema for license-name
values was incomplete and did not cover the full SPDX license identifier
specification, which includes things like "AND" for specifying multiple
licenses.

Composer already has solid code in a library to do this validation, so
let's use it! This updates both the validateRegistrationFile.php and
ExtensionJsonValidationTest.php to use the composer/spdx-licenses
library (a new development dependency) to ensure the license-name field
is a valid SPDX identifier.

Also fix a silly typo in the validateRegistrationFile script which
prevented it from running, and use ::class so it will be easier to
detect typos like that in the future.

Bug: T146862
Change-Id: Ibb8973ed7950ae81c90558f9630f73746b2aff2c
2016-09-28 20:50:48 +00:00
..
data Remove unused conds.mustache test file 2016-08-01 17:16:52 -07:00
docs
includes Merge "Create fields & data for image/file data indexing" 2016-09-27 07:46:36 +00:00
languages Only attempt to calculate the TTL in Language::sprintfDate if needed 2016-06-23 12:36:25 +02:00
maintenance Clean-up of MediaWikiTestCase::checkHasGzip() 2016-06-01 10:44:23 -07:00
mocks Migrate callers to new MWFileProps::getPropsFromPath() method 2016-09-22 00:33:46 +00:00
skins Many more function case mismatches 2016-03-19 00:20:58 +00:00
specials Issue 301 redirects for Special:Search/searchterm 2016-08-18 15:31:45 -07:00
structure registration: Improve license-name validation 2016-09-28 20:50:48 +00:00
suites Re-add parser tests to the ParserTests group 2016-09-15 09:39:20 +10:00
tests Add tests for MediawikiTestCase::setService stuff 2016-05-06 14:35:27 +00:00
bootstrap.php
LessFileCompilationTest.php
Makefile Refactor parser tests 2016-09-12 16:11:42 +10:00
MediaWikiLangTestCase.php phpunit: Abstract user-lang override in MediaWikiTestCase 2016-03-09 16:55:50 +00:00
MediaWikiPHPUnitTestListener.php
MediaWikiTestCase.php Replace DatabaseBase:: with Database:: and update type hints 2016-09-27 04:20:03 +00:00
phpunit.php Refactor parser tests 2016-09-12 16:11:42 +10:00
README
ResourceLoaderTestCase.php resourceloader: Fix WikiModule preload to support localised titles 2016-09-14 14:54:01 -07:00
run-tests.bat
suite.xml Refactor parser tests 2016-09-12 16:11:42 +10:00
TODO

== MediaWiki PHPUnit Tests ==

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


=== WARNING ===

Some of the unit 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