<?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"
         convertErrorsToExceptions="true"
         convertNoticesToExceptions="true"
         convertWarningsToExceptions="true"
         processIsolation="false"
         stopOnFailure="false"
         verbose="true">
    <testsuites>
        <testsuite name="API Integration Tests">
            <directory suffix="Test.php">./tests/Feature/API</directory>
        </testsuite>
        <testsuite name="Authentication">
            <file>./tests/Feature/API/AuthenticationApiTest.php</file>
        </testsuite>
        <testsuite name="Booking">
            <file>./tests/Feature/API/SeatBookingApiTest.php</file>
        </testsuite>
        <testsuite name="Orders">
            <file>./tests/Feature/API/OrderApiTest.php</file>
        </testsuite>
        <testsuite name="Venues">
            <file>./tests/Feature/API/VenueApiTest.php</file>
        </testsuite>
        <testsuite name="QRCodes">
            <file>./tests/Feature/API/QrCodeApiTest.php</file>
        </testsuite>
        <testsuite name="Analytics">
            <file>./tests/Feature/API/AnalyticsApiTest.php</file>
        </testsuite>
        <testsuite name="Admin">
            <file>./tests/Feature/API/AdminApiTest.php</file>
        </testsuite>
        <testsuite name="TicketPDF">
            <file>./tests/Feature/API/TicketPdfApiTest.php</file>
        </testsuite>
        <testsuite name="RateLimiting">
            <file>./tests/Feature/RateLimitingTest.php</file>
        </testsuite>
    </testsuites>
    <coverage processUncoveredFiles="true">
        <include>
            <directory suffix=".php">./app/Http/Controllers/API</directory>
            <directory suffix=".php">./app/Http/Controllers/Api</directory>
            <directory suffix=".php">./app/Http/Middleware</directory>
        </include>
        <report>
            <html outputDirectory="tests/coverage/html"/>
            <text outputFile="tests/coverage/coverage.txt"/>
            <clover outputFile="tests/coverage/clover.xml"/>
        </report>
    </coverage>
    <php>
        <env name="APP_ENV" value="testing"/>
        <env name="BCRYPT_ROUNDS" value="4"/>
        <env name="CACHE_DRIVER" 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="TELESCOPE_ENABLED" value="false"/>
        <env name="RATE_LIMITING_ENABLED" value="true"/>
        <env name="BOOKING_ENABLED" value="true"/>
    </php>
</phpunit>