#!/usr/bin/env php
<?php

declare(strict_types=1);

use Aeliot\PHPUnitCodeCoverageBaseline\CommandLoader;
use Aeliot\PHPUnitCodeCoverageBaseline\Enum\Command as CommandEnum;
use Aeliot\PHPUnitCodeCoverageBaseline\Enum\Version;
use Symfony\Component\Console\Application;

require __DIR__ . '/include_autoloader.php';

@trigger_error('[ DEPRECATION ] file "bin/pccb_clover_build_baseline" is deprecated.'
    . ' Use call "bin/pccb pccb:clover:build-baseline" instead.', \E_USER_DEPRECATED);

try {
    $application = new Application('PCCB', Version::CURRENT);
    $application->setCommandLoader(new CommandLoader());
    $application->setDefaultCommand(CommandEnum::CLOVER_BUILD_BASELINE, true);
    $exitCode = $application->run();
} catch (\Throwable $exception) {
    fwrite(STDERR, sprintf('[ERROR] %s%s', $exception->getMessage(), PHP_EOL));
    $exitCode = 2;
}

if ($exitCode) {
    exit($exitCode);
}
