Skip to content

TrialExecutor ​

Rasuvaeff\PropertyTesting\Runner\TrialExecutor

Interface — Package: property-testing-core — Source — Version: v1.0.0-1-g88fdee2

Implemented by: Runner\CallableTrialExecutor, Testo\TestoTrialExecutor, PhpUnit\PhpUnitTrialExecutor

Executes the property body once with the given arguments.

This is the single seam between the engine and a test framework: the runner owns generation, shrinking, corpus replay and events, the executor owns the one call into framework land. It is an interface rather than a callable because each framework signals failure differently and the adapter must fold that into a Runner\TrialOutcome (and may keep framework state of its own, e.g. aggregated per-run result attributes).

The contract deliberately does not require the executor to share memory with the runner: a future subprocess executor (wall-clock watchdog for non-terminating bodies) must fit behind the same interface.

Methods ​

execute() ​

php
execute(array<string,mixed> $arguments): Runner\TrialOutcome