final public function __construct()Inherited
| this | //Implicit.// |
public function getEngineConfigurationName()Inherited
| wild |
final public function setRunAllTests($run_all_tests)Inherited
| $run_all_tests |
| wild |
final public function getRunAllTests()Inherited
| wild |
protected function supportsRunAllTests()Inherited
| wild |
final public function setConfigurationManager($configuration_manager)Inherited
| ArcanistConfigurationManager | $configuration_manager |
| wild |
final public function getConfigurationManager()Inherited
| wild |
final public function setWorkingCopy($working_copy)Inherited
| ArcanistWorkingCopyIdentity | $working_copy |
| wild |
final public function getWorkingCopy()Inherited
| wild |
final public function setPaths($paths)Inherited
| array | $paths |
| wild |
final public function getPaths()Inherited
| wild |
final public function setEnableCoverage($enable_coverage)Inherited
| $enable_coverage |
| wild |
final public function getEnableCoverage()Inherited
| wild |
final public function setRenderer($renderer)Inherited
| ArcanistUnitRenderer | $renderer |
| wild |
public function run()
| wild |
public function shouldEchoTestResults()Inherited
Modify the return value of this function in the child class, if you do not need to echo the test results after all the tests have been run. This is the case for example when the child class prints the tests results while the tests are running.
| wild |
private function parseTestResults($path, $json_tmp, $clover_tmp, $stderr)
Parse test results from phpunit json report.
| string | $path | Path to test |
| string | $json_tmp | Path to phpunit json report |
| string | $clover_tmp | Path to phpunit clover report |
| string | $stderr | Data written to stderr |
| array |
private function findTestFile($path)
Search for test cases for a given file in a large number of "reasonable" locations. See getSearchLocationsForTests() for specifics.
TODO: Add support for finding tests in testsuite folders from phpunit.xml configuration.
| string | $path | PHP file to locate test cases for. |
| string|null | Path to test cases, or null. |
public static function getSearchLocationsForTests($path)
Get places to look for PHP Unit tests that cover a given file. For some file "/a/b/c/X.php", we look in the same directory:
/a/b/c/
We then look in all parent directories for a directory named "tests/" (or "Tests/"):
/a/b/c/tests/ /a/b/tests/ /a/tests/ /tests/
We also try to replace each directory component with "tests/":
/a/b/tests/ /a/tests/c/ /tests/b/c/
We also try to add "tests/" at each directory level:
/a/b/c/tests/ /a/b/tests/c/ /a/tests/b/c/ /tests/a/b/c/
This finds tests with a layout like:
docs/ src/ tests/
...or similar. This list will be further pruned by the caller; it is intentionally filesystem-agnostic to be unit testable.
| string | $path | PHP file to locate test cases for. |
| list<string> | List of directories to search for tests in. |
private function prepareConfigFile()
Tries to find and update phpunit configuration file based on phpunit_config option in .arcconfig.
| wild |