Skip to content

Commit 68bf9de

Browse files
Add missing schema files
1 parent d4e4655 commit 68bf9de

File tree

5 files changed

+1617
-0
lines changed

5 files changed

+1617
-0
lines changed

schema/9.0.xsd

Lines changed: 315 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,315 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
3+
<xs:annotation>
4+
<xs:documentation source="https://phpunit.de/documentation.html">
5+
This Schema file defines the rules by which the XML configuration file of PHPUnit 9.0 may be structured.
6+
</xs:documentation>
7+
<xs:appinfo source="https://phpunit.de/documentation.html"/>
8+
</xs:annotation>
9+
<xs:element name="phpunit" type="phpUnitType">
10+
<xs:annotation>
11+
<xs:documentation>Root Element</xs:documentation>
12+
</xs:annotation>
13+
</xs:element>
14+
<xs:complexType name="filtersType">
15+
<xs:sequence>
16+
<xs:element name="whitelist" type="whiteListType" minOccurs="0"/>
17+
</xs:sequence>
18+
</xs:complexType>
19+
<xs:complexType name="filterType">
20+
<xs:sequence>
21+
<xs:choice maxOccurs="unbounded" minOccurs="0">
22+
<xs:group ref="pathGroup"/>
23+
<xs:element name="exclude">
24+
<xs:complexType>
25+
<xs:group ref="pathGroup"/>
26+
</xs:complexType>
27+
</xs:element>
28+
</xs:choice>
29+
</xs:sequence>
30+
</xs:complexType>
31+
<xs:complexType name="whiteListType">
32+
<xs:complexContent>
33+
<xs:extension base="filterType">
34+
<xs:attribute name="addUncoveredFilesFromWhitelist" default="true" type="xs:boolean"/>
35+
<xs:attribute name="processUncoveredFilesFromWhitelist" default="false" type="xs:boolean"/>
36+
</xs:extension>
37+
</xs:complexContent>
38+
</xs:complexType>
39+
<xs:complexType name="groupsType">
40+
<xs:choice>
41+
<xs:sequence>
42+
<xs:element name="include" type="groupType"/>
43+
<xs:element name="exclude" type="groupType" minOccurs="0"/>
44+
</xs:sequence>
45+
<xs:sequence>
46+
<xs:element name="exclude" type="groupType"/>
47+
</xs:sequence>
48+
</xs:choice>
49+
</xs:complexType>
50+
<xs:complexType name="groupType">
51+
<xs:sequence>
52+
<xs:element name="group" type="xs:string" maxOccurs="unbounded"/>
53+
</xs:sequence>
54+
</xs:complexType>
55+
<xs:complexType name="extensionsType">
56+
<xs:sequence>
57+
<xs:element name="extension" type="objectType" maxOccurs="unbounded"/>
58+
</xs:sequence>
59+
</xs:complexType>
60+
<xs:complexType name="listenersType">
61+
<xs:sequence>
62+
<xs:element name="listener" type="objectType" maxOccurs="unbounded"/>
63+
</xs:sequence>
64+
</xs:complexType>
65+
<xs:complexType name="objectType">
66+
<xs:sequence>
67+
<xs:element name="arguments" minOccurs="0">
68+
<xs:complexType>
69+
<xs:group ref="argumentsGroup"/>
70+
</xs:complexType>
71+
</xs:element>
72+
</xs:sequence>
73+
<xs:attribute name="class" type="xs:string" use="required"/>
74+
<xs:attribute name="file" type="xs:anyURI"/>
75+
</xs:complexType>
76+
<xs:complexType name="arrayType">
77+
<xs:sequence>
78+
<xs:element name="element" type="argumentType" minOccurs="0" maxOccurs="unbounded"/>
79+
</xs:sequence>
80+
</xs:complexType>
81+
<xs:complexType name="argumentType">
82+
<xs:group ref="argumentChoice"/>
83+
<xs:attribute name="key" use="required"/>
84+
</xs:complexType>
85+
<xs:group name="argumentsGroup">
86+
<xs:sequence>
87+
<xs:choice minOccurs="0" maxOccurs="unbounded">
88+
<xs:element name="array" type="arrayType" />
89+
<xs:element name="integer" type="xs:integer" />
90+
<xs:element name="string" type="xs:string" />
91+
<xs:element name="double" type="xs:double" />
92+
<xs:element name="null" />
93+
<xs:element name="object" type="objectType" />
94+
<xs:element name="file" type="xs:anyURI" />
95+
<xs:element name="directory" type="xs:anyURI" />
96+
<xs:element name="boolean" type="xs:boolean" />
97+
</xs:choice>
98+
</xs:sequence>
99+
</xs:group>
100+
<xs:group name="argumentChoice">
101+
<xs:choice>
102+
<xs:element name="array" type="arrayType" minOccurs="0" maxOccurs="unbounded"/>
103+
<xs:element name="integer" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
104+
<xs:element name="string" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
105+
<xs:element name="double" type="xs:double" minOccurs="0" maxOccurs="unbounded"/>
106+
<xs:element name="null" minOccurs="0" maxOccurs="unbounded"/>
107+
<xs:element name="object" type="objectType" minOccurs="0" maxOccurs="unbounded"/>
108+
<xs:element name="file" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
109+
<xs:element name="directory" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
110+
<xs:element name="boolean" type="xs:boolean" minOccurs="0" maxOccurs="unbounded"/>
111+
</xs:choice>
112+
</xs:group>
113+
<xs:simpleType name="columnsType">
114+
<xs:union>
115+
<xs:simpleType>
116+
<xs:restriction base="xs:integer"/>
117+
</xs:simpleType>
118+
<xs:simpleType>
119+
<xs:restriction base="xs:string">
120+
<xs:enumeration value="max"/>
121+
</xs:restriction>
122+
</xs:simpleType>
123+
</xs:union>
124+
</xs:simpleType>
125+
<xs:complexType name="loggersType">
126+
<xs:sequence>
127+
<xs:element name="log" type="loggerType" maxOccurs="unbounded"/>
128+
</xs:sequence>
129+
</xs:complexType>
130+
<xs:complexType name="loggerType">
131+
<xs:attribute name="type">
132+
<xs:simpleType>
133+
<xs:restriction base="xs:string">
134+
<xs:enumeration value="coverage-html"/>
135+
<xs:enumeration value="coverage-text"/>
136+
<xs:enumeration value="coverage-clover"/>
137+
<xs:enumeration value="coverage-crap4j"/>
138+
<xs:enumeration value="coverage-xml"/>
139+
<xs:enumeration value="coverage-php"/>
140+
<xs:enumeration value="plain"/>
141+
<xs:enumeration value="teamcity"/>
142+
<xs:enumeration value="junit"/>
143+
<xs:enumeration value="testdox-html"/>
144+
<xs:enumeration value="testdox-text"/>
145+
<xs:enumeration value="testdox-xml"/>
146+
</xs:restriction>
147+
</xs:simpleType>
148+
</xs:attribute>
149+
<xs:attribute name="target" type="xs:anyURI"/>
150+
<xs:attribute name="lowUpperBound" type="xs:nonNegativeInteger" default="35"/>
151+
<xs:attribute name="highLowerBound" type="xs:nonNegativeInteger" default="70"/>
152+
<xs:attribute name="showUncoveredFiles" type="xs:boolean" default="false"/>
153+
<xs:attribute name="showOnlySummary" type="xs:boolean" default="false"/>
154+
<xs:attribute name="threshold" type="xs:nonNegativeInteger" default="30"/>
155+
</xs:complexType>
156+
<xs:group name="pathGroup">
157+
<xs:sequence>
158+
<xs:choice minOccurs="0" maxOccurs="unbounded">
159+
<xs:element name="directory" type="directoryFilterType"/>
160+
<xs:element name="file" type="fileFilterType"/>
161+
</xs:choice>
162+
</xs:sequence>
163+
</xs:group>
164+
<xs:complexType name="directoryFilterType">
165+
<xs:simpleContent>
166+
<xs:extension base="xs:anyURI">
167+
<xs:attribute type="xs:string" name="prefix" default=""/>
168+
<xs:attribute type="xs:string" name="suffix" default="Test.php"/>
169+
<xs:attributeGroup ref="phpVersionGroup"/>
170+
</xs:extension>
171+
</xs:simpleContent>
172+
</xs:complexType>
173+
<xs:simpleType name="executionOrderType">
174+
<xs:restriction base="xs:string">
175+
<xs:enumeration value="default"/>
176+
<xs:enumeration value="defects"/>
177+
<xs:enumeration value="depends"/>
178+
<xs:enumeration value="depends,defects"/>
179+
<xs:enumeration value="depends,duration"/>
180+
<xs:enumeration value="depends,random"/>
181+
<xs:enumeration value="depends,reverse"/>
182+
<xs:enumeration value="depends,size"/>
183+
<xs:enumeration value="duration"/>
184+
<xs:enumeration value="no-depends"/>
185+
<xs:enumeration value="no-depends,defects"/>
186+
<xs:enumeration value="no-depends,duration"/>
187+
<xs:enumeration value="no-depends,random"/>
188+
<xs:enumeration value="no-depends,reverse"/>
189+
<xs:enumeration value="no-depends,size"/>
190+
<xs:enumeration value="random"/>
191+
<xs:enumeration value="reverse"/>
192+
<xs:enumeration value="size"/>
193+
</xs:restriction>
194+
</xs:simpleType>
195+
<xs:complexType name="fileFilterType">
196+
<xs:simpleContent>
197+
<xs:extension base="xs:anyURI">
198+
<xs:attributeGroup ref="phpVersionGroup"/>
199+
</xs:extension>
200+
</xs:simpleContent>
201+
</xs:complexType>
202+
<xs:attributeGroup name="phpVersionGroup">
203+
<xs:attribute name="phpVersion" type="xs:string" default="5.3.0"/>
204+
<xs:attribute name="phpVersionOperator" type="xs:string" default="&gt;="/>
205+
</xs:attributeGroup>
206+
<xs:complexType name="phpType">
207+
<xs:sequence>
208+
<xs:choice maxOccurs="unbounded">
209+
<xs:element name="includePath" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
210+
<xs:element name="ini" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
211+
<xs:element name="const" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
212+
<xs:element name="var" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
213+
<xs:element name="env" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
214+
<xs:element name="post" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
215+
<xs:element name="get" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
216+
<xs:element name="cookie" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
217+
<xs:element name="server" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
218+
<xs:element name="files" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
219+
<xs:element name="request" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
220+
</xs:choice>
221+
</xs:sequence>
222+
</xs:complexType>
223+
<xs:complexType name="namedValueType">
224+
<xs:attribute name="name" use="required" type="xs:string"/>
225+
<xs:attribute name="value" use="required" type="xs:anySimpleType"/>
226+
<xs:attribute name="verbatim" use="optional" type="xs:boolean"/>
227+
<xs:attribute name="force" use="optional" type="xs:boolean"/>
228+
</xs:complexType>
229+
<xs:complexType name="phpUnitType">
230+
<xs:annotation>
231+
<xs:documentation>The main type specifying the document structure</xs:documentation>
232+
</xs:annotation>
233+
<xs:group ref="configGroup"/>
234+
<xs:attributeGroup ref="configAttributeGroup"/>
235+
</xs:complexType>
236+
<xs:attributeGroup name="configAttributeGroup">
237+
<xs:attribute name="backupGlobals" type="xs:boolean" default="false"/>
238+
<xs:attribute name="backupStaticAttributes" type="xs:boolean" default="false"/>
239+
<xs:attribute name="bootstrap" type="xs:anyURI"/>
240+
<xs:attribute name="cacheResult" type="xs:boolean" default="true"/>
241+
<xs:attribute name="cacheResultFile" type="xs:anyURI"/>
242+
<xs:attribute name="cacheTokens" type="xs:boolean" default="false"/>
243+
<xs:attribute name="colors" type="xs:boolean" default="false"/>
244+
<xs:attribute name="columns" type="columnsType" default="80"/>
245+
<xs:attribute name="convertDeprecationsToExceptions" type="xs:boolean" default="true"/>
246+
<xs:attribute name="convertErrorsToExceptions" type="xs:boolean" default="true"/>
247+
<xs:attribute name="convertNoticesToExceptions" type="xs:boolean" default="true"/>
248+
<xs:attribute name="convertWarningsToExceptions" type="xs:boolean" default="true"/>
249+
<xs:attribute name="disableCodeCoverageIgnore" type="xs:boolean" default="false"/>
250+
<xs:attribute name="forceCoversAnnotation" type="xs:boolean" default="false"/>
251+
<xs:attribute name="printerClass" type="xs:string" default="PHPUnit\TextUI\ResultPrinter"/>
252+
<xs:attribute name="printerFile" type="xs:anyURI"/>
253+
<xs:attribute name="processIsolation" type="xs:boolean" default="false"/>
254+
<xs:attribute name="stopOnDefect" type="xs:boolean" default="false"/>
255+
<xs:attribute name="stopOnError" type="xs:boolean" default="false"/>
256+
<xs:attribute name="stopOnFailure" type="xs:boolean" default="false"/>
257+
<xs:attribute name="stopOnWarning" type="xs:boolean" default="false"/>
258+
<xs:attribute name="stopOnIncomplete" type="xs:boolean" default="false"/>
259+
<xs:attribute name="stopOnRisky" type="xs:boolean" default="false"/>
260+
<xs:attribute name="stopOnSkipped" type="xs:boolean" default="false"/>
261+
<xs:attribute name="failOnRisky" type="xs:boolean" default="false"/>
262+
<xs:attribute name="failOnWarning" type="xs:boolean" default="false"/>
263+
<xs:attribute name="beStrictAboutChangesToGlobalState" type="xs:boolean" default="false"/>
264+
<xs:attribute name="beStrictAboutOutputDuringTests" type="xs:boolean" default="false"/>
265+
<xs:attribute name="beStrictAboutResourceUsageDuringSmallTests" type="xs:boolean" default="false"/>
266+
<xs:attribute name="beStrictAboutTestsThatDoNotTestAnything" type="xs:boolean" default="true"/>
267+
<xs:attribute name="beStrictAboutTodoAnnotatedTests" type="xs:boolean" default="false"/>
268+
<xs:attribute name="beStrictAboutCoversAnnotation" type="xs:boolean" default="false"/>
269+
<xs:attribute name="defaultTimeLimit" type="xs:integer" default="0"/>
270+
<xs:attribute name="enforceTimeLimit" type="xs:boolean" default="false"/>
271+
<xs:attribute name="ignoreDeprecatedCodeUnitsFromCodeCoverage" type="xs:boolean" default="false"/>
272+
<xs:attribute name="timeoutForSmallTests" type="xs:integer" default="1"/>
273+
<xs:attribute name="timeoutForMediumTests" type="xs:integer" default="10"/>
274+
<xs:attribute name="timeoutForLargeTests" type="xs:integer" default="60"/>
275+
<xs:attribute name="testSuiteLoaderClass" type="xs:string" default="PHPUnit\Runner\StandardTestSuiteLoader"/>
276+
<xs:attribute name="testSuiteLoaderFile" type="xs:anyURI"/>
277+
<xs:attribute name="defaultTestSuite" type="xs:string" default=""/>
278+
<xs:attribute name="verbose" type="xs:boolean" default="false"/>
279+
<xs:attribute name="testdox" type="xs:boolean" default="false"/>
280+
<xs:attribute name="stderr" type="xs:boolean" default="false"/>
281+
<xs:attribute name="reverseDefectList" type="xs:boolean" default="false"/>
282+
<xs:attribute name="registerMockObjectsFromTestArgumentsRecursively" type="xs:boolean" default="false"/>
283+
<xs:attribute name="extensionsDirectory" type="xs:string"/>
284+
<xs:attribute name="executionOrder" type="executionOrderType" default="default"/>
285+
<xs:attribute name="resolveDependencies" type="xs:boolean" default="true"/>
286+
<xs:attribute name="noInteraction" type="xs:boolean" default="false"/>
287+
</xs:attributeGroup>
288+
<xs:group name="configGroup">
289+
<xs:all>
290+
<xs:element ref="testSuiteFacet" minOccurs="0"/>
291+
<xs:element name="groups" type="groupsType" minOccurs="0"/>
292+
<xs:element name="testdoxGroups" type="groupsType" minOccurs="0"/>
293+
<xs:element name="filter" type="filtersType" minOccurs="0"/>
294+
<xs:element name="logging" type="loggersType" minOccurs="0"/>
295+
<xs:element name="extensions" type="extensionsType" minOccurs="0"/>
296+
<xs:element name="listeners" type="listenersType" minOccurs="0"/>
297+
<xs:element name="php" type="phpType" minOccurs="0"/>
298+
</xs:all>
299+
</xs:group>
300+
<xs:element name="testSuiteFacet" abstract="true"/>
301+
<xs:element name="testsuite" type="testSuiteType" substitutionGroup="testSuiteFacet"/>
302+
<xs:element name="testsuites" type="testSuitesType" substitutionGroup="testSuiteFacet"/>
303+
<xs:complexType name="testSuitesType">
304+
<xs:sequence>
305+
<xs:element name="testsuite" type="testSuiteType" maxOccurs="unbounded"/>
306+
</xs:sequence>
307+
</xs:complexType>
308+
<xs:complexType name="testSuiteType">
309+
<xs:sequence>
310+
<xs:group ref="pathGroup"/>
311+
<xs:element name="exclude" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
312+
</xs:sequence>
313+
<xs:attribute name="name" type="xs:string" use="required"/>
314+
</xs:complexType>
315+
</xs:schema>

0 commit comments

Comments
 (0)