Support reading git repository information from a JSON file in the cache directory. When present, this file serves to provide information needed by getHead, getHeadSHA1, getHeadCommitDate, getCurrentBranch and a new getRemoteUrl method. A GitInfo::precomputeValues method is also provided which can generate the cache file for a given GitInfo instance. This support can be combined with a deployment step to reduce the need to repeatedly gather information from the .git files/git binary. It also allows computing information that can be lost when directory structures differ between deployment staging hosts and hosts running MediaWiki. This change also adds memoization of computed values for a given GitInfo instance which may provide a small performance boost even for deployments which are not using precomputed cache files. Bug: 53972 Change-Id: I66e058acc5a71e5d82644f85d819f49d6ee9d1e6 |
||
|---|---|---|
| .. | ||
| data | ||
| docs | ||
| includes | ||
| languages | ||
| maintenance | ||
| mocks | ||
| skins | ||
| structure | ||
| suites | ||
| tests | ||
| bootstrap.php | ||
| install-phpunit.sh | ||
| LessFileCompilationTest.php | ||
| Makefile | ||
| MediaWikiLangTestCase.php | ||
| MediaWikiPHPUnitCommand.php | ||
| MediaWikiPHPUnitTestListener.php | ||
| MediaWikiTestCase.php | ||
| phpunit.php | ||
| README | ||
| ResourceLoaderTestCase.php | ||
| run-tests.bat | ||
| suite.xml | ||
| 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 PHPUnit is not installed, follow the installation instructions in the PHPUnit Manual at: http://www.phpunit.de/manual/current/en/installation.html - or - On Unix-like operating systems, run: make install == 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 unit tests for MediaWiki can be found at: http://mediawiki.org/wiki/Unit_Testing