Skip to content

Commit 2b08543

Browse files
committed
Merge pull request sebastianbergmann#492 from gooh/master
Updated phpunit.xml.dist for usage with Schema
2 parents a4183ff + 5681650 commit 2b08543

File tree

2 files changed

+255
-2
lines changed

2 files changed

+255
-2
lines changed

Diff for: phpunit.xml.dist

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!-- Generated by PHP Project Wizard (PPW) 1.1.0-dev on Sat Mar 12 12:47:10 CET 2011 -->
33

4-
<phpunit bootstrap="PHPUnit/Autoload.php"
4+
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5+
xsi:noNamespaceSchemaLocation="phpunit.xsd"
6+
bootstrap="PHPUnit/Autoload.php"
57
backupGlobals="false"
68
verbose="true">
79
<testsuites>
@@ -25,7 +27,7 @@
2527
</logging>
2628

2729
<filter>
28-
<whitelist addUncoveredFilesFromWhitelist="true">
30+
<whitelist processUncoveredFilesFromWhitelist="true">
2931
<directory suffix=".php">PHPUnit</directory>
3032
<exclude>
3133
<file>PHPUnit/Autoload.php</file>

Diff for: phpunit.xsd

+251
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,251 @@
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="http://www.phpunit.de/manual/3.7/en/appendixes.configuration.html">
5+
This Schema file defines the rules by which the XML configuration file of PHPUnit 3.7 may be structured.
6+
</xs:documentation>
7+
<xs:appinfo source="http://www.phpunit.de/manual/current/en/appendixes.configuration.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:choice>
16+
<xs:sequence>
17+
<xs:element name="blacklist" type="filterType"/>
18+
<xs:element name="whitelist" type="whiteListType" minOccurs="0"/>
19+
</xs:sequence>
20+
<xs:sequence>
21+
<xs:element name="whitelist" type="whiteListType"/>
22+
</xs:sequence>
23+
</xs:choice>
24+
</xs:complexType>
25+
<xs:complexType name="filterType">
26+
<xs:sequence>
27+
<xs:group ref="pathGroup"/>
28+
<xs:element name="exclude" maxOccurs="unbounded" minOccurs="0">
29+
<xs:complexType>
30+
<xs:group ref="pathGroup"/>
31+
</xs:complexType>
32+
</xs:element>
33+
</xs:sequence>
34+
</xs:complexType>
35+
<xs:complexType name="whiteListType">
36+
<xs:complexContent>
37+
<xs:extension base="filterType">
38+
<xs:attribute name="processUncoveredFilesFromWhitelist" default="true" type="xs:boolean"/>
39+
</xs:extension>
40+
</xs:complexContent>
41+
</xs:complexType>
42+
<xs:complexType name="groupsType">
43+
<xs:choice>
44+
<xs:sequence>
45+
<xs:element name="include" type="groupType"/>
46+
<xs:element name="exclude" type="groupType" minOccurs="0"/>
47+
</xs:sequence>
48+
<xs:sequence>
49+
<xs:element name="exclude" type="groupType"/>
50+
</xs:sequence>
51+
</xs:choice>
52+
</xs:complexType>
53+
<xs:complexType name="groupType">
54+
<xs:sequence>
55+
<xs:element name="group" type="xs:string" maxOccurs="unbounded"/>
56+
</xs:sequence>
57+
</xs:complexType>
58+
<xs:complexType name="listenersType">
59+
<xs:sequence>
60+
<xs:element name="listener" type="objectType" maxOccurs="unbounded"/>
61+
</xs:sequence>
62+
</xs:complexType>
63+
<xs:complexType name="objectType">
64+
<xs:sequence>
65+
<xs:element name="arguments" minOccurs="0">
66+
<xs:complexType>
67+
<xs:group ref="argumentsGroup"/>
68+
</xs:complexType>
69+
</xs:element>
70+
</xs:sequence>
71+
<xs:attribute name="class" type="xs:string" use="required"/>
72+
<xs:attribute name="file" type="xs:anyURI"/>
73+
</xs:complexType>
74+
<xs:complexType name="arrayType">
75+
<xs:sequence>
76+
<xs:element name="element" type="argumentType" minOccurs="0" maxOccurs="unbounded"/>
77+
</xs:sequence>
78+
</xs:complexType>
79+
<xs:complexType name="argumentType">
80+
<xs:group ref="argumentChoice"/>
81+
<xs:attribute name="key" use="required"/>
82+
</xs:complexType>
83+
<xs:group name="argumentsGroup">
84+
<xs:sequence>
85+
<xs:element name="array" type="arrayType" minOccurs="0" maxOccurs="unbounded"/>
86+
<xs:element name="integer" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
87+
<xs:element name="string" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
88+
<xs:element name="double" type="xs:double" minOccurs="0" maxOccurs="unbounded"/>
89+
<xs:element name="null" minOccurs="0" maxOccurs="unbounded"/>
90+
<xs:element name="object" type="objectType" minOccurs="0" maxOccurs="unbounded"/>
91+
<xs:element name="file" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
92+
<xs:element name="directory" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
93+
</xs:sequence>
94+
</xs:group>
95+
<xs:group name="argumentChoice">
96+
<xs:choice>
97+
<xs:element name="array" type="arrayType" minOccurs="0" maxOccurs="unbounded"/>
98+
<xs:element name="integer" type="xs:integer" minOccurs="0" maxOccurs="unbounded"/>
99+
<xs:element name="string" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
100+
<xs:element name="double" type="xs:double" minOccurs="0" maxOccurs="unbounded"/>
101+
<xs:element name="null" minOccurs="0" maxOccurs="unbounded"/>
102+
<xs:element name="object" type="objectType" minOccurs="0" maxOccurs="unbounded"/>
103+
<xs:element name="file" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
104+
<xs:element name="directory" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
105+
</xs:choice>
106+
</xs:group>
107+
<xs:complexType name="loggersType">
108+
<xs:sequence>
109+
<xs:element name="log" type="loggerType" maxOccurs="unbounded"/>
110+
</xs:sequence>
111+
</xs:complexType>
112+
<xs:complexType name="loggerType">
113+
<xs:attribute name="type">
114+
<xs:simpleType>
115+
<xs:restriction base="xs:string">
116+
<xs:enumeration value="coverage-html"/>
117+
<xs:enumeration value="coverage-clover"/>
118+
<xs:enumeration value="json"/>
119+
<xs:enumeration value="plain"/>
120+
<xs:enumeration value="tap"/>
121+
<xs:enumeration value="junit"/>
122+
<xs:enumeration value="testdox-html"/>
123+
<xs:enumeration value="testdox-text"/>
124+
</xs:restriction>
125+
</xs:simpleType>
126+
</xs:attribute>
127+
<xs:attribute name="target" type="xs:anyURI"/>
128+
<xs:attribute name="title" type="xs:string"/>
129+
<xs:attribute name="charset" type="xs:string" default="UTF-8"/>
130+
<xs:attribute name="yui" type="xs:boolean" default="true"/>
131+
<xs:attribute name="highlight" type="xs:boolean" default="false"/>
132+
<xs:attribute name="lowUpperBound" type="xs:nonNegativeInteger" default="35"/>
133+
<xs:attribute name="highLowerBound" type="xs:nonNegativeInteger" default="70"/>
134+
<xs:attribute name="logIncompleteSkipped" type="xs:boolean" default="false"/>
135+
</xs:complexType>
136+
<xs:group name="pathGroup">
137+
<xs:sequence>
138+
<xs:element name="directory" type="directoryFilterType" minOccurs="0" maxOccurs="unbounded"/>
139+
<xs:element name="file" type="fileFilterType" minOccurs="0" maxOccurs="unbounded"/>
140+
</xs:sequence>
141+
</xs:group>
142+
<xs:complexType name="directoryFilterType">
143+
<xs:simpleContent>
144+
<xs:extension base="xs:anyURI">
145+
<xs:attribute type="xs:string" name="suffix" default="Test.php"/>
146+
<xs:attributeGroup ref="phpVersionGroup"/>
147+
</xs:extension>
148+
</xs:simpleContent>
149+
</xs:complexType>
150+
<xs:complexType name="fileFilterType">
151+
<xs:simpleContent>
152+
<xs:extension base="xs:anyURI">
153+
<xs:attributeGroup ref="phpVersionGroup"/>
154+
</xs:extension>
155+
</xs:simpleContent>
156+
</xs:complexType>
157+
<xs:attributeGroup name="phpVersionGroup">
158+
<xs:attribute name="phpVersion" type="xs:string" default="5.3.0"/>
159+
<xs:attribute name="phpVersionOperator" type="xs:string" default="&gt;="/>
160+
</xs:attributeGroup>
161+
<xs:complexType name="phpType">
162+
<xs:sequence>
163+
<xs:element name="includePath" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
164+
<xs:element name="ini" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
165+
<xs:element name="const" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
166+
<xs:element name="var" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
167+
<xs:element name="env" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
168+
<xs:element name="post" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
169+
<xs:element name="get" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
170+
<xs:element name="cookie" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
171+
<xs:element name="server" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
172+
<xs:element name="files" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
173+
<xs:element name="request" type="namedValueType" minOccurs="0" maxOccurs="unbounded"/>
174+
</xs:sequence>
175+
</xs:complexType>
176+
<xs:complexType name="namedValueType">
177+
<xs:attribute name="name" use="required" type="xs:string"/>
178+
<xs:attribute name="value" use="required" type="xs:anySimpleType"/>
179+
</xs:complexType>
180+
<xs:complexType name="phpUnitType">
181+
<xs:annotation>
182+
<xs:documentation>The main type specifying the document structure</xs:documentation>
183+
</xs:annotation>
184+
<xs:group ref="configGroup"/>
185+
<xs:attributeGroup ref="configAttributeGroup"/>
186+
</xs:complexType>
187+
<xs:attributeGroup name="configAttributeGroup">
188+
<xs:attribute name="backupGlobals" type="xs:boolean" default="true"/>
189+
<xs:attribute name="backupStaticAttributes" type="xs:boolean" default="false"/>
190+
<xs:attribute name="bootstrap" type="xs:anyURI"/>
191+
<xs:attribute name="cacheTokens" type="xs:boolean"/>
192+
<xs:attribute name="colors" type="xs:boolean" default="false"/>
193+
<xs:attribute name="convertErrorsToExceptions" type="xs:boolean" default="true"/>
194+
<xs:attribute name="convertNoticesToExceptions" type="xs:boolean" default="true"/>
195+
<xs:attribute name="convertWarningsToExceptions" type="xs:boolean" default="true"/>
196+
<xs:attribute name="forceCoversAnnotation" type="xs:boolean" default="false"/>
197+
<xs:attribute name="mapTestClassNameToCoveredClassName" type="xs:boolean" default="false"/>
198+
<xs:attribute name="printerClass" type="xs:string" default="PHPUnit_TextUI_ResultPrinter"/>
199+
<xs:attribute name="printerFile" type="xs:anyURI"/>
200+
<xs:attribute name="processIsolation" type="xs:boolean" default="false"/>
201+
<xs:attribute name="stopOnError" type="xs:boolean" default="false"/>
202+
<xs:attribute name="stopOnFailure" type="xs:boolean" default="false"/>
203+
<xs:attribute name="stopOnIncomplete" type="xs:boolean" default="false"/>
204+
<xs:attribute name="stopOnSkipped" type="xs:boolean" default="false"/>
205+
<xs:attribute name="strict" type="xs:boolean" default="false"/>
206+
<xs:attribute name="testSuiteLoaderClass" type="xs:string" default="PHPUnit_Runner_StandardTestSuiteLoader"/>
207+
<xs:attribute name="testSuiteLoaderFile" type="xs:anyURI"/>
208+
<xs:attribute name="timeoutForSmallTests" type="xs:integer" default="1"/>
209+
<xs:attribute name="timeoutForMediumTests" type="xs:integer" default="10"/>
210+
<xs:attribute name="timeoutForLargeTests" type="xs:integer" default="60"/>
211+
<xs:attribute name="verbose" type="xs:boolean" default="false"/>
212+
</xs:attributeGroup>
213+
<xs:group name="configGroup">
214+
<xs:all>
215+
<xs:element ref="testSuiteFacet" minOccurs="0"/>
216+
<xs:element name="groups" type="groupsType" minOccurs="0"/>
217+
<xs:element name="filter" type="filtersType" minOccurs="0"/>
218+
<xs:element name="logging" type="loggersType" minOccurs="0"/>
219+
<xs:element name="listeners" type="listenersType" minOccurs="0"/>
220+
<xs:element name="php" type="phpType" minOccurs="0"/>
221+
<xs:element name="selenium" type="seleniumType" minOccurs="0"/>
222+
</xs:all>
223+
</xs:group>
224+
<xs:complexType name="seleniumType">
225+
<xs:sequence>
226+
<xs:element name="browser" type="browserType"/>
227+
</xs:sequence>
228+
</xs:complexType>
229+
<xs:complexType name="browserType">
230+
<xs:attribute name="name" type="xs:string"/>
231+
<xs:attribute name="browser" type="xs:string"/>
232+
<xs:attribute name="host" type="xs:anyURI"/>
233+
<xs:attribute name="port" type="xs:nonNegativeInteger"/>
234+
<xs:attribute name="timeout" type="xs:nonNegativeInteger"/>
235+
</xs:complexType>
236+
<xs:element name="testSuiteFacet" abstract="true"/>
237+
<xs:element name="testsuite" type="testSuiteType" substitutionGroup="testSuiteFacet"/>
238+
<xs:element name="testsuites" type="testSuitesType" substitutionGroup="testSuiteFacet"/>
239+
<xs:complexType name="testSuitesType">
240+
<xs:sequence>
241+
<xs:element name="testsuite" type="testSuiteType"/>
242+
</xs:sequence>
243+
</xs:complexType>
244+
<xs:complexType name="testSuiteType">
245+
<xs:sequence>
246+
<xs:group ref="pathGroup"/>
247+
<xs:element name="exclude" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded"/>
248+
</xs:sequence>
249+
<xs:attribute name="name" type="xs:string" use="required"/>
250+
</xs:complexType>
251+
</xs:schema>

0 commit comments

Comments
 (0)