<?xml version="1.0" encoding="UTF-8"?>
<!-- TODO set checkForUnintentionallyCoveredCode="true" once https://www.drupal.org/node/2626832 is resolved. -->
<!-- PHPUnit expects functional tests to be run with either a privileged user
 or your current system user. See core/tests/README.md and
 https://www.drupal.org/node/2116263 for details.
-->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         bootstrap="../../../core/tests/bootstrap.php"
         colors="true"
         beStrictAboutTestsThatDoNotTestAnything="true"
         beStrictAboutOutputDuringTests="true"
         beStrictAboutChangesToGlobalState="true"
         failOnRisky="true"
         failOnWarning="true"
         displayDetailsOnTestsThatTriggerErrors="true"
         displayDetailsOnTestsThatTriggerWarnings="true"
         displayDetailsOnTestsThatTriggerDeprecations="true"
         cacheResult="false"
         xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.5/phpunit.xsd"
         cacheDirectory=".phpunit.cache">
  <php>
    <!-- Set error reporting to E_ALL. -->
    <ini name="error_reporting" value="32767"/>
    <!-- Do not limit the amount of memory tests take to run. -->
    <ini name="memory_limit" value="-1"/>
    <!-- Example SIMPLETEST_BASE_URL value: http://localhost -->
    <env name="SIMPLETEST_BASE_URL" value=""/>
    <!-- Example SIMPLETEST_DB value: mysql://username:password@localhost/databasename#table_prefix -->
    <env name="SIMPLETEST_DB" value="sqlite://localhost/sites/default/files/.ht.sqlite"/>
    <!-- Example BROWSERTEST_OUTPUT_DIRECTORY value: /path/to/webroot/sites/simpletest/browser_output -->
    <env name="BROWSERTEST_OUTPUT_DIRECTORY" value=""/>
    <!-- To have browsertest output use an alternative base URL. For example if
     SIMPLETEST_BASE_URL is an internal DDEV URL, you can set this to the
     external DDev URL so you can follow the links directly.
    -->
    <env name="BROWSERTEST_OUTPUT_BASE_URL" value=""/>
    <!-- To disable deprecation testing completely uncomment the next line. -->
    <!-- <env name="SYMFONY_DEPRECATIONS_HELPER" value="disabled"/> -->
    <!-- Example for changing the driver class for mink tests MINK_DRIVER_CLASS value: 'Drupal\FunctionalJavascriptTests\DrupalSelenium2Driver' -->
    <env name="MINK_DRIVER_CLASS" value=""/>
    <!-- Example for changing the driver args to mink tests MINK_DRIVER_ARGS value: '["http://127.0.0.1:8510"]' -->
    <env name="MINK_DRIVER_ARGS" value=""/>
    <!-- Example for changing the driver args to webdriver tests MINK_DRIVER_ARGS_WEBDRIVER value: '["chrome", { "goog:chromeOptions": { "w3c": false } }, "http://localhost:4444/wd/hub"]' For using the Firefox browser, replace "chrome" with "firefox" -->
    <env name="MINK_DRIVER_ARGS_WEBDRIVER"
         value="[&quot;chrome&quot;, { &quot;goog:chromeOptions&quot;: { &quot;w3c&quot;: false } }, &quot;http://localhost:4444/wd/hub&quot;]"/>
  </php>
  <extensions>
    <!-- Functional tests HTML output logging. -->
    <bootstrap class="Drupal\TestTools\Extension\HtmlLogging\HtmlOutputLogger">
      <!-- The directory where the browser output will be stored. If a relative
        path is specified, it will be relative to the current working directory
        of the process running the PHPUnit CLI. In CI environments, this can be
        overridden by the value set for the "BROWSERTEST_OUTPUT_DIRECTORY"
        environment variable.
      -->
      <parameter name="outputDirectory" value="sites/simpletest/browser_output"/>
      <!-- By default browser tests print the individual links in the test run
        report. To avoid overcrowding the output in CI environments, you can
        set the "verbose" parameter or the "BROWSERTEST_OUTPUT_VERBOSE"
        environment variable to "false". In GitLabCI, the output is saved
        anyway as an artifact that can be browsed or downloaded from Gitlab.
      -->
      <parameter name="verbose" value="true"/>
    </bootstrap>
  </extensions>
  <testsuites>
    <testsuite name="kernel">
      <directory>modules/**/tests/src/Kernel</directory>
      <directory>tests/src/Kernel</directory>
    </testsuite>
    <testsuite name="functional">
      <directory>modules/**/tests/src/Functional</directory>
      <directory>tests/src/Functional</directory>
    </testsuite>
    <testsuite name="functional-javascript">
      <directory>modules/**/tests/src/FunctionalJavascript</directory>
      <directory>tests/src/FunctionalJavascript</directory>
    </testsuite>
  </testsuites>
</phpunit>
