<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ phpunit.xml
  ~ Copyright (c) 2025 james@firefly-iii.org.
  ~
  ~ This file is part of Firefly III (https://github.com/firefly-iii).
  ~
  ~ This program is free software: you can redistribute it and/or modify
  ~ it under the terms of the GNU Affero General Public License as
  ~ published by the Free Software Foundation, either version 3 of the
  ~ License, or (at your option) any later version.
  ~
  ~ This program is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  ~ GNU Affero General Public License for more details.
  ~
  ~ You should have received a copy of the GNU Affero General Public License
  ~ along with this program.  If not, see https://www.gnu.org/licenses/.
  -->

<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.2/phpunit.xsd"
         backupGlobals="false"
         backupStaticProperties="false"
         beStrictAboutOutputDuringTests="true"
         bootstrap="vendor/autoload.php"
         cacheDirectory=".phpunit.cache"
         colors="true"
         executionOrder="depends,defects"
         failOnRisky="true"
         failOnWarning="true"
         processIsolation="false"
         stopOnError="true"
         stopOnFailure="true">
    <php>
        <env name="APP_ENV" value="testing"/>
        <env name="DB_CONNECTION" value="sqlite"/>
        <env name="APP_LOG_ENV" value="notice"/>
        <env name="DB_DATABASE" value=""/>
        <env name="APP_LOG_LEVEL" value="notice"/>
        <env name="AUDIT_LOG_LEVEL" value="emergency" />


        <env name="QUERY_PARSER_IMPLEMENTATION" value="new"/>
    </php>
    <testsuites>
        <testsuite name="unit">
            <directory suffix="Test.php">./tests/unit</directory>
        </testsuite>
        <testsuite name="integration">
            <directory suffix="Test.php">./tests/integration</directory>
        </testsuite>
        <testsuite name="feature">
            <directory suffix="Test.php">./tests/feature</directory>
        </testsuite>
    </testsuites>
    <source>
        <include>
            <directory suffix=".php">app</directory>
        </include>
    </source>
    <coverage ignoreDeprecatedCodeUnits="true"
              pathCoverage="true">
        <report>
            <clover outputFile="coverage.xml"/>
        </report>
    </coverage>
</phpunit>
