<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="vendor/phpunit/phpunit/phpunit.xsd"
         bootstrap="vendor/autoload.php"
         colors="true"
>
    <testsuites>
        <testsuite name="Unit">
            <directory>tests/Unit</directory>
        </testsuite>
        <testsuite name="Feature">
            <directory>tests/Feature</directory>
        </testsuite>
    </testsuites>
    <source>
        <include>
            <directory>app</directory>
        </include>
    </source>
    <php>
        <env name="APP_ENV" value="testing"/>
        <env name="APP_MAINTENANCE_DRIVER" value="file"/>
        <env name="BCRYPT_ROUNDS" value="4"/>
        <env name="CACHE_STORE" value="array"/>
        <!-- config/cache.php resuelve el driver real vía CACHE_DRIVER (la
             clave de Laravel 10, no CACHE_STORE de L11 - ver CLAUDE.md), así
             que sin esto los tests usaban caché de archivos real en disco.
             Eso hace que el rate limiter (throttle:X,1) persista entre
             ejecuciones distintas de "php artisan test" -mismo IP de
             pruebas siempre- contaminando tests de una corrida con hits
             de la corrida anterior. -->
        <env name="CACHE_DRIVER" value="array"/>
        <!-- No usamos sqlite/:memory: aquí: el pdo_sqlite de este equipo no
             está habilitado para el PHP que usa la CLI ("could not find
             driver"), y aunque lo estuviera, tickets tiene un ENUM y una
             columna generada con sintaxis MySQL/MariaDB que sqlite no
             traduce igual. En vez de eso apuntamos DB_DATABASE a una base
             MySQL descartable; DB_CONNECTION, host, usuario y contraseña
             se heredan de .env sin tocarlos acá. Hay que crear esta base
             una sola vez (ver README/CLAUDE.md) — RefreshDatabase migra y
             limpia SOLO esta base en cada corrida, nunca la de .env. -->
        <env name="DB_DATABASE" value="tickets_testing"/>
        <env name="MAIL_MAILER" value="array"/>
        <env name="PULSE_ENABLED" value="false"/>
        <env name="QUEUE_CONNECTION" value="sync"/>
        <env name="SESSION_DRIVER" value="array"/>
        <env name="TELESCOPE_ENABLED" value="false"/>
    </php>
</phpunit>
