#!/usr/bin/env bash
# Copertura combinata delle due suite (unit + kernel).
#
# Le suite hanno bootstrap diversi e non possono girare in una sola invocazione di PHPUnit:
# si producono due report clover e se ne fa l'unione riga per riga. pcov si attiva solo qui,
# non pesa sulle esecuzioni normali.
set -euo pipefail
cd "$(dirname "$0")/.."

OUT="${TMPDIR:-/tmp}/crmp-coverage"
mkdir -p "$OUT"

echo "== suite unit =="
php -d pcov.enabled=1 -d pcov.directory=web/modules/custom vendor/bin/phpunit \
	--testsuite custom-unit --coverage-clover "$OUT/unit.xml" > /dev/null

echo "== suite kernel =="
SIMPLETEST_DB="${SIMPLETEST_DB:-$(php scripts/simpletest-db-url.php web/sites/default/settings.php)}" \
	php -d pcov.enabled=1 -d pcov.directory=web/modules/custom vendor/bin/phpunit \
	-c phpunit-kernel.xml --testsuite custom-kernel --coverage-clover "$OUT/kernel.xml" > /dev/null

php scripts/coverage-unione.php "$OUT/unit.xml" "$OUT/kernel.xml"
