classRunnerConfig
final class RunnerConfig
Public API: explicitly declared with
@visibility public.How a named runner executes: its extension, command, working directory and timeout.
$config = new \Requirements\Test\RunnerConfig('phpunit', ['php', 'vendor/bin/phpunit'], '/project');
[$config->extension, $config->command, $config->directory, $config->timeout] // => ['phpunit', ['php', 'vendor/bin/phpunit'], '/project', 60.0]$config = \Requirements\Test\RunnerConfig::from(['extension' => 'behat', 'command' => ['php', 'vendor/bin/behat'], 'cwd' => 'tests', 'timeout' => 5], '/project');
[$config->directory, $config->timeout] // => ['/project/tests', 5.0]Properties§
public string $extensionpublic non-empty-list<string> $commandpublic string $directorypublic float $timeout = 60.0Methods§
public function __construct(
public string $extension,
public non-empty-list<string> $command,
public string $directory,
public float $timeout = 60.0,
)Parameters
$extension | string | The registered runner extension name |
$command | non-empty-list<string> | The command and its arguments, run without a shell |
$directory | string | The absolute working directory |
$timeout | float | The positive timeout in seconds |
public static function from(mixed $value, string $directory): selfReads a runner entry of the configuration.
Parameters
$value | mixed | The decoded runner entry |
$directory | string | The configuration directory that a relative cwd resolves against |
Returns
self The runner configurationThrows
InvalidInputException When the entry has unknown fields, no command or a nonpositive timeoutTest cases 7
RunnerConfigTest::testFromAcceptsAFractionalTimeoutcallsRunnerConfigTest::testFromDefaultsToTheConfigurationDirectoryAndSixtySecondscallsRunnerConfigTest::testFromKeepsAnAbsoluteWorkingDirectorycallsRunnerConfigTest::testFromKeepsRepeatedCommandArgumentscallsRunnerConfigTest::testFromReadsEveryFieldcallsRunnerConfigTest::testFromRejectsInvalidEntriescallsRunnerConfigTest::testFromTreatsANullTimeoutAsAbsentcalls
Called from 1
Calls 10
- static-call Fields::mapping() line 46
- static-call Fields::keys() line 47
- static-call Fields::strings() line 48
- function-call
is_intline 50 - function-call
is_floatline 50 - function-call
is_finiteline 50 - new InvalidInputException line 51
- static-call Fields::text() line 53
- new
selfline 54 - function-call
str_starts_withline 54
Test cases 47§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 8
RunnerConfigTest::testFromAcceptsAFractionalTimeoutcallsRunnerConfigTest::testFromDefaultsToTheConfigurationDirectoryAndSixtySecondscallsRunnerConfigTest::testFromKeepsAnAbsoluteWorkingDirectorycallsRunnerConfigTest::testFromKeepsRepeatedCommandArgumentscallsRunnerConfigTest::testFromReadsEveryFieldcallsRunnerConfigTest::testFromRejectsInvalidEntriescallsRunnerConfigTest::testFromTreatsANullTimeoutAsAbsentcallsRunnerConfigTest::testTimeoutDefaultsToSixtySecondsWhenConstructedcalls
Other tests reaching this symbol 39
CountingRunnercallsLinkValidatorTest::testValidateAcceptsResolvedLinkscallsLinkValidatorTest::testValidateRejectsRunnerNamedByExtensioncallsLinkValidatorTest::testValidateRejectsUnknownRunnercallsLoaderTest::testLoadReadsRunnerscallsExecutorTestcallsProjectTest::testHoldsEveryPartcallsBehatRunnerTest::testRunAcceptsAnAbsoluteFeaturePathcallsBehatRunnerTest::testRunPassesTheTargetAfterTheOptionscallsBehatRunnerTest::testRunReadsTheHeaderAtTheExactLinecallsBehatRunnerTest::testRunRejectsLinesWithoutAScenarioHeadercallsBehatRunnerTest::testRunRejectsMalformedTargetscallsBehatRunnerTest::testRunRunsScenarioAndOutlineAndRejectsUndefinedOrMissingTestscallsPhpUnitRunnerTest::testRunRejectsMalformedTargetscallsPhpUnitRunnerTest::testRunReportsTheFailureOutputcallsPhpUnitRunnerTest::testRunRunsOnlyExactMethodAndRequiresRealPassingTestscallsPhpUnitRunnerTest::testRunTreatsTheTargetAsLiteralTextcallsProcessRunnerTest::testRunAppendsTheArgumentsToTheCommandcallsProcessRunnerTest::testRunFailsOnTimeoutAndMissingReportcallsProcessRunnerTest::testRunFailsWithTheOutputOfAFailingExitcallsProcessRunnerTest::testRunReadsEveryXmlReportAndIgnoresOtherFilescallsProcessRunnerTest::testRunReadsTheReportWrittenToTheFreshDirectorycallsProcessRunnerTest::testRunRemovesTheReportDirectorycallsProcessRunnerTest::testRunReportsACommandThatCannotStartcallsProcessRunnerTest::testRunReportsTheOutputOfARunWithoutReportscallsProcessRunnerTest::testRunReportsTheTimeoutMessagecallsProcessRunnerTest::testRunRunsInTheConfiguredDirectorycallsRunnerExtensionTest::testRunReportsTheResultOfTheTargetcallsTestExecutionTest::testRunDeduplicatesEligibleTargetsAndNeverRunsUnsupportedItemscallsVerifierTest::testVerifyDefersManualTargetsUnlessAllIsRequestedcallsVerifierTest::testVerifyFailsWhenAnyTargetFailscallsVerifierTest::testVerifyPassesWhenEveryTargetPassescallsVerifierTest::testVerifyRejectsAnUnknownRunnerExtensioncallsVerifierTest::testVerifyReportsLinkedTargetsAsNotRunWithoutTestscallsVerifierTest::testVerifyReportsRequirementsAsNotApplicableWithoutRunningThemcallsVerifierTest::testVerifyReportsUnsupportedSpecificationsWithoutRunningThemcallsVerifierTest::testVerifyRunsASharedTargetOncecallsVerifierTest::testVerifyRunsTheSameTargetOfDifferentRunnersSeparatelycallsVerifierTest::testVerifySharesAnAutomaticResultWithAnEarlierManualReferencecalls
Relations§
Static calls 1
Type declarations 4
- type Requirements\Test\BehatRunner packages/requirements/src/Test/BehatRunner.php:29
- type Requirements\Test\PhpUnitRunner packages/requirements/src/Test/PhpUnitRunner.php:29
- type Requirements\Test\ProcessRunner packages/requirements/src/Test/ProcessRunner.php:37
- type Requirements\Test\RunnerExtension packages/requirements/src/Test/RunnerExtension.php:29