for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace MyTester;
enum JobResult
{
case PASSED;
case SKIPPED;
case FAILED;
case WARNING;
public function output(): string
return match ($this) {
self::PASSED => ".",
self::SKIPPED => "s",
self::FAILED => "F",
self::WARNING => "W",
};
}
public static function fromJob(Job $job): self
if ($job->skip) {
return self::SKIPPED;
} elseif (str_contains($job->output, " failed. ")) {
return self::FAILED;
} elseif (str_starts_with($job->output, "Warning: ")) {
return self::WARNING;
return self::PASSED;