<?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="BROADCAST_CONNECTION" value="null"/>
        <env name="CACHE_STORE" value="array"/>
        <!-- Tests run on MySQL, the production engine (SYSTEM_PLAN C2), so
             foreign keys, column types and query plans are exercised for real.
             TenantTestCase creates a throwaway schema per test. -->
        <env name="DB_CONNECTION" value="mysql"/>
        <env name="DB_HOST" value="127.0.0.1"/>
        <env name="DB_PORT" value="3306"/>
        <env name="DB_DATABASE" value="retail_test"/>
        <env name="DB_USERNAME" value="root"/>
        <env name="DB_PASSWORD" value=""/>
        <env name="DB_URL" value=""/>
        <env name="CENTRAL_DB_CONNECTION" value="mysql"/>
        <env name="CENTRAL_DB_HOST" value="127.0.0.1"/>
        <env name="CENTRAL_DB_PORT" value="3306"/>
        <env name="CENTRAL_DB_DATABASE" value="retail_test"/>
        <env name="CENTRAL_DB_USERNAME" value="root"/>
        <env name="CENTRAL_DB_PASSWORD" value=""/>
        <env name="MAIL_MAILER" value="array"/>
        <env name="QUEUE_CONNECTION" value="sync"/>
        <env name="SESSION_DRIVER" value="array"/>
        <!-- The suite reads the developer's .env for anything not pinned here.
             Setting SHOP_FULFILMENT_BRANCH_ID=2 for the dev storefront failed
             three shop tests that were green in isolation: availability
             narrowed to a branch the test tenants never stock, and the
             "two branches, no decision" refusal never fired because a
             decision existed. Empty means "not configured" — both consumers
             check the value truthily. -->
        <env name="SHOP_FULFILMENT_BRANCH_ID" value=""/>
        <env name="SHOP_PLATFORM_DOMAIN" value=""/>
        <env name="SHOP_STOREFRONT_ORIGIN_TEMPLATE" value="https://{host}"/>
        <env name="PULSE_ENABLED" value="false"/>
        <env name="TELESCOPE_ENABLED" value="false"/>
        <env name="NIGHTWATCH_ENABLED" value="false"/>
    </php>
</phpunit>
