<?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>
        <!-- The whole suite (about 2,400 tests) runs in one process and passed
             this box's 512M CLI default. Tests only; the live site is unaffected. -->
        <ini name="memory_limit" value="1536M"/>
        <env name="APP_ENV" value="testing"/>
        <env name="APP_MAINTENANCE_DRIVER" value="file"/>
        <env name="BCRYPT_ROUNDS" value="4"/>
        <env name="BROADCAST_CONNECTION" value="null"/>
        <env name="CACHE_STORE" value="array"/>
        <env name="DB_CONNECTION" value="sqlite"/>
        <env name="DB_DATABASE" value=":memory:"/>
        <env name="DB_URL" value=""/>
        <env name="MAIL_MAILER" value="array"/>
        <!-- The CRM mail driver follows the local .env, which may be gmail.
             Tests stay on the log driver unless a test opts into gmail. -->
        <env name="CRM_MAIL_DRIVER" value="log"/>
        <!-- The CRM pilot is on in production. Tests assume the whole company
             can open it, and turn the pilot on themselves when they mean to. -->
        <env name="CRM_PILOT" value="false"/>
        <env name="QUEUE_CONNECTION" value="sync"/>
        <env name="SESSION_DRIVER" value="array"/>
        <env name="PULSE_ENABLED" value="false"/>
        <env name="TELESCOPE_ENABLED" value="false"/>
        <env name="NIGHTWATCH_ENABLED" value="false"/>
        <!-- Crash reporting off by default: a test that deliberately provokes
             an exception should not be writing app_errors rows and firing
             notifications on its way past. ErrorReportingTest turns it on. -->
        <env name="ERROR_REPORTING_ENABLED" value="false"/>
    </php>
</phpunit>
