Currently a part of the tests (perhaps 15-30%) cover large parts of the general program, which make them more “integration tests” than “unit tests”. These tests and the corresponding tested code should be refactored such that it can be really tested with unit tests.
The aforementioned tests and tested code are mainly the code involving reading-writing-deleting-creating of files or involving global variables, which is:
- ConfigurationTest
- possibly ConstructionTest for the part reading superglobal variables
- InstallationIndependantTest::testCreateLocalSettings
- LoadingTest
- MediaWikiFarmComposerScriptTest, particularly critical for this one, the tested code should be splitted in smaller parts
- MediaWikiFarmScriptTest
- MultiversionInstallationTest::testCacheExistence
In addition of a small refactoring in some parts, it can also be used the mocking feature of PHPUnit.