<?xml version="1.0" encoding="UTF-8"?>
<!--
  PHPUnit Configuration Distribution Template

  Copy this file to phpunit.xml for local configuration.
  phpunit.xml is typically gitignored to allow local customization.

  Test Suites:
    - Default (no --testsuite): Runs all tests in tests/ directory
    - Unit (--testsuite unit): Runs only tests in tests/Unit/
    - Integration (--testsuite integration): Runs only tests in tests/Integration/

  Coverage:
    - Run with: ./vendor/bin/phpunit --coverage-html .phpunit.cache/coverage-html
    - Target: 80% coverage for changed files
    - Reports generated in .phpunit.cache/ directory
-->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/12.0/phpunit.xsd"
         bootstrap="tests/bootstrap.php"
         colors="true"
         cacheDirectory=".phpunit.cache"
         displayDetailsOnTestsThatTriggerDeprecations="false"
         displayDetailsOnTestsThatTriggerErrors="true"
         displayDetailsOnTestsThatTriggerNotices="false"
         displayDetailsOnTestsThatTriggerWarnings="false">
    <testsuites>
        <testsuite name="BuyerKiosk Test Suite">
            <directory>tests</directory>
        </testsuite>
        <testsuite name="unit">
            <directory>tests/Unit</directory>
        </testsuite>
        <testsuite name="integration">
            <directory>tests/Integration</directory>
        </testsuite>
    </testsuites>
    <source>
        <include>
            <directory suffix=".php">src/BuyerKiosk</directory>
            <directory suffix=".php">lib</directory>
            <directory suffix=".php">auth</directory>
            <directory suffix=".php">models</directory>
        </include>
    </source>
    <coverage>
        <report>
            <html outputDirectory=".phpunit.cache/coverage-html"/>
            <clover outputFile=".phpunit.cache/coverage.xml"/>
            <text outputFile="php://stdout" showOnlySummary="true"/>
        </report>
    </coverage>
    <php>
        <env name="APP_ENV" value="testing"/>
        <env name="LOG_DIR" value="logs"/>
        <!-- Database configuration is loaded from .env file -->
        <ini name="error_reporting" value="E_ALL &amp; ~E_DEPRECATED &amp; ~E_USER_DEPRECATED &amp; ~E_WARNING &amp; ~E_NOTICE"/>
        <ini name="display_errors" value="Off"/>
    </php>
    <!--
    <extensions>
        <bootstrap class="Tests\SuppressWarningsListener"/>
    </extensions>
    -->
</phpunit>
