Repository navigation
Expand file tree
/
Copy pathphpunit.xml.dist
More file actions
53 lines (51 loc) · 1.84 KB
/
Copy pathphpunit.xml.dist
File metadata and controls
53 lines (51 loc) · 1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?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"
cacheDirectory=".phpunit.cache"
failOnRisky="true"
failOnWarning="true"
defaultTestSuite="unit">
<!--
Two suites, and only "unit" runs by default.
The unit suite is the one the four gates are about: fast, offline, no
docker, and held to 100% line coverage. The integration suite crosses the
container boundary. It is the only place anything actually executes what
the adapter builds, so it needs ddev and cannot run everywhere. Running
both by default would make `vendor/bin/phpunit` fail on any machine
without docker, and drag a partial-coverage run through the threshold
extension.
Integration is run explicitly:
vendor/bin/phpunit - -testsuite=integration - -no-coverage
-->
<testsuites>
<testsuite name="unit">
<directory>tests</directory>
<exclude>tests/Integration</exclude>
</testsuite>
<testsuite name="integration">
<directory>tests/Integration</directory>
</testsuite>
</testsuites>
<source>
<include>
<directory>src</directory>
</include>
</source>
<coverage>
<report>
<html outputDirectory="build/coverage-html"/>
</report>
</coverage>
<!--
PHPUnit 11.5 has no native minimum-coverage threshold, so the 100% line
coverage requirement is enforced by this extension. It lives here rather
than in a CI flag so a bare `vendor/bin/phpunit` enforces it identically.
-->
<extensions>
<bootstrap class="Upkeep\Tests\Support\CoverageThresholdExtension">
<parameter name="minimumLineCoverage" value="100"/>
</bootstrap>
</extensions>
</phpunit>