fun createPestCoverageCommand()

in src/main/kotlin/com/pestphp/pest/coverage/PestCoverageProgramRunner.kt [52:77]


    fun createPestCoverageCommand(
        runConfiguration: PestRunConfiguration,
        interpreter: PhpInterpreter,
        coverageArguments: List<String>,
        localCoverage: String,
        targetCoverage: String
    ): PhpCommandSettings {
        val command = PhpCommandSettingsBuilder(runConfiguration.project, interpreter)
            .loadDebugExtension().build().apply {
                runConfiguration.applyTestArguments(this, coverageArguments)
            }

        val options = when (runConfiguration.pestSettings.pestRunnerSettings.coverageEngine) {
            CoverageEngine.XDEBUG -> XdebugConfigurationOptionsManager
                .getConfigurationOptionsProvider(runConfiguration.project, interpreter)
                .enableCoverage()
                .createXdebugConfigurations()
            CoverageEngine.PCOV -> listOf(PhpConfigurationOption("pcov.enabled", 1))
            else -> throw IllegalArgumentException("Unsupported coverage engine.")
        }
        command.addConfigurationOptions(options)
        addParallelArguments(runConfiguration, command)
        setAdditionalMapping(localCoverage, targetCoverage, command)

        return command
    }