<?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"
stopOnFailure="false"
>
<testsuites>
<testsuite name="Unit">
<directory>tests/Unit</directory>
</testsuite>
<testsuite name="Feature">
<directory>tests/Feature</directory>
</testsuite>
</testsuites>
<source>
<include>
<directory>app</directory>
</include>
<exclude>
<!-- Exclude thin wrappers and view-only classes -->
<directory>app/Http/Controllers</directory>
<directory>app/Modules/Admin/Filament</directory>
<directory>app/Console/Commands</directory>
</exclude>
</source>
<php>
<ini name="memory_limit" value="512M"/>
<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"/>
<env name="DB_CONNECTION" value="sqlite"/>
<env name="DB_DATABASE" value=":memory:"/>
<env name="MAIL_MAILER" value="array"/>
<env name="QUEUE_CONNECTION" value="sync"/>
<env name="SESSION_DRIVER" value="array"/>
<env name="SCOUT_DRIVER" value="null"/>
<env name="BROADCAST_DRIVER" value="null"/>
<env name="FILESYSTEM_DISK" value="local"/>
<!--
Telescope defaults to enabled (config/telescope.php falls back to
true with no TELESCOPE_ENABLED set, and there's no .env.testing to
override it). Its ModelWatcher records every single Eloquent
event, which is harmless for normal specs but VendorPlanServiceTest
creates 9,999 products in one test to prove an "unlimited" plan
never blocks — that's ~9,999+ IncomingEntry objects buffered in
memory on top of the activity-log entries each create already
triggers, which is what was blowing through the 512M limit above.
Telescope is a local debugging tool; it has no business running
during automated tests regardless of how many rows a test creates.
-->
<env name="TELESCOPE_ENABLED" value="false"/>
</php>
</phpunit>