xref: /aosp_15_r20/external/deqp/doc/testlog-stylesheet/testlog.xsl (revision 35238bce31c2a825756842865a792f8cf7f89930)
1*35238bceSAndroid Build Coastguard Worker<?xml version="1.0" encoding="utf-8"?>
2*35238bceSAndroid Build Coastguard Worker<!--
3*35238bceSAndroid Build Coastguard Worker    drawElements Quality Program utilities
4*35238bceSAndroid Build Coastguard Worker
5*35238bceSAndroid Build Coastguard Worker    Copyright 2016 The Android Open Source Project
6*35238bceSAndroid Build Coastguard Worker
7*35238bceSAndroid Build Coastguard Worker    Licensed under the Apache License, Version 2.0 (the "License");
8*35238bceSAndroid Build Coastguard Worker    you may not use this file except in compliance with the License.
9*35238bceSAndroid Build Coastguard Worker    You may obtain a copy of the License at
10*35238bceSAndroid Build Coastguard Worker
11*35238bceSAndroid Build Coastguard Worker         http://www.apache.org/licenses/LICENSE-2.0
12*35238bceSAndroid Build Coastguard Worker
13*35238bceSAndroid Build Coastguard Worker    Unless required by applicable law or agreed to in writing, software
14*35238bceSAndroid Build Coastguard Worker    distributed under the License is distributed on an "AS IS" BASIS,
15*35238bceSAndroid Build Coastguard Worker    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16*35238bceSAndroid Build Coastguard Worker    See the License for the specific language governing permissions and
17*35238bceSAndroid Build Coastguard Worker    limitations under the License.
18*35238bceSAndroid Build Coastguard Worker-->
19*35238bceSAndroid Build Coastguard Worker<xsl:stylesheet
20*35238bceSAndroid Build Coastguard Worker	version="1.0"
21*35238bceSAndroid Build Coastguard Worker	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
22*35238bceSAndroid Build Coastguard Worker	xmlns="http://www.w3.org/1999/xhtml">
23*35238bceSAndroid Build Coastguard Worker
24*35238bceSAndroid Build Coastguard Worker	<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
25*35238bceSAndroid Build Coastguard Worker
26*35238bceSAndroid Build Coastguard Worker	<xsl:template match="/">
27*35238bceSAndroid Build Coastguard Worker		<xsl:apply-templates/>
28*35238bceSAndroid Build Coastguard Worker	</xsl:template>
29*35238bceSAndroid Build Coastguard Worker
30*35238bceSAndroid Build Coastguard Worker	<xsl:template match="BatchResult">
31*35238bceSAndroid Build Coastguard Worker		<html>
32*35238bceSAndroid Build Coastguard Worker			<head>
33*35238bceSAndroid Build Coastguard Worker				<link href="testlog.css" rel="stylesheet" type="text/css"/>
34*35238bceSAndroid Build Coastguard Worker				<title><xsl:value-of select="@FileName"/></title>
35*35238bceSAndroid Build Coastguard Worker			</head>
36*35238bceSAndroid Build Coastguard Worker			<body>
37*35238bceSAndroid Build Coastguard Worker				<table class="Totals">
38*35238bceSAndroid Build Coastguard Worker					<tr><td><b><xsl:text>Total cases</xsl:text></b></td><td><b><xsl:value-of select="ResultTotals/@All"/></b></td></tr>
39*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Pass</xsl:text></td><td class="Pass"><xsl:value-of select="ResultTotals/@Pass"/></td></tr>
40*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Fail</xsl:text></td><td class="Fail"><xsl:value-of select="ResultTotals/@Fail"/></td></tr>
41*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Quality warning</xsl:text></td><td class="QualityWarning"><xsl:value-of select="ResultTotals/@QualityWarning"/></td></tr>
42*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Compatibility warning</xsl:text></td><td class="CompatibilityWarning"><xsl:value-of select="ResultTotals/@CompatibilityWarning"/></td></tr>
43*35238bceSAndroid Build Coastguard Worker					<!-- <tr><td><xsl:text>Pending</xsl:text></td><td class="Pending"><xsl:value-of select="ResultTotals/@pending"/></td></tr> -->
44*35238bceSAndroid Build Coastguard Worker					<!-- <tr><td><xsl:text>Running</xsl:text></td><td class="Running"><xsl:value-of select="ResultTotals/@Running"/></td></tr> -->
45*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Not supported</xsl:text></td><td class="NotSupported"><xsl:value-of select="ResultTotals/@NotSupported"/></td></tr>
46*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Resource error</xsl:text></td><td class="ResourceError"><xsl:value-of select="ResultTotals/@ResourceError"/></td></tr>
47*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Internal error</xsl:text></td><td class="InternalError"><xsl:value-of select="ResultTotals/@InternalError"/></td></tr>
48*35238bceSAndroid Build Coastguard Worker					<!-- <tr><td><xsl:text>Canceled</xsl:text></td><td class="Canceled"><xsl:value-of select="ResultTotals/@Canceled"/></td></tr> -->
49*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Timeout</xsl:text></td><td class="Timeout"><xsl:value-of select="ResultTotals/@Timeout"/></td></tr>
50*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Crash</xsl:text></td><td class="Crash"><xsl:value-of select="ResultTotals/@Crash"/></td></tr>
51*35238bceSAndroid Build Coastguard Worker					<tr><td><xsl:text>Disabled</xsl:text></td><td class="Disabled"><xsl:value-of select="ResultTotals/@Disabled"/></td></tr>
52*35238bceSAndroid Build Coastguard Worker					<!-- <tr><td><xsl:text>Terminated</xsl:text></td><td class="Terminated"><xsl:value-of select="ResultTotals/@Terminated"/></td></tr> -->
53*35238bceSAndroid Build Coastguard Worker				</table>
54*35238bceSAndroid Build Coastguard Worker				<xsl:apply-templates/>
55*35238bceSAndroid Build Coastguard Worker			</body>
56*35238bceSAndroid Build Coastguard Worker		</html>
57*35238bceSAndroid Build Coastguard Worker	</xsl:template>
58*35238bceSAndroid Build Coastguard Worker
59*35238bceSAndroid Build Coastguard Worker	<xsl:template match="/TestCaseResult">
60*35238bceSAndroid Build Coastguard Worker		<html>
61*35238bceSAndroid Build Coastguard Worker			<head>
62*35238bceSAndroid Build Coastguard Worker				<link href="testlog.css" rel="stylesheet" type="text/css"/>
63*35238bceSAndroid Build Coastguard Worker				<title><xsl:value-of select="@CasePath"/></title>
64*35238bceSAndroid Build Coastguard Worker			</head>
65*35238bceSAndroid Build Coastguard Worker			<body>
66*35238bceSAndroid Build Coastguard Worker				<h1 class="{Result/@StatusCode}"><xsl:value-of select="@CasePath"/><xsl:text>: </xsl:text><xsl:value-of select="Result"/><xsl:text> (</xsl:text><xsl:value-of select="Result/@StatusCode"/><xsl:text>)</xsl:text></h1>
67*35238bceSAndroid Build Coastguard Worker				<xsl:apply-templates/>
68*35238bceSAndroid Build Coastguard Worker			</body>
69*35238bceSAndroid Build Coastguard Worker		</html>
70*35238bceSAndroid Build Coastguard Worker	</xsl:template>
71*35238bceSAndroid Build Coastguard Worker
72*35238bceSAndroid Build Coastguard Worker	<xsl:template match="BatchResult/TestCaseResult">
73*35238bceSAndroid Build Coastguard Worker		<div class="TestCaseResult">
74*35238bceSAndroid Build Coastguard Worker			<h1 class="{Result/@StatusCode}"><xsl:value-of select="@CasePath"/><xsl:text>: </xsl:text><xsl:value-of select="Result"/><xsl:text> (</xsl:text><xsl:value-of select="Result/@StatusCode"/><xsl:text>)</xsl:text></h1>
75*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
76*35238bceSAndroid Build Coastguard Worker		</div>
77*35238bceSAndroid Build Coastguard Worker	</xsl:template>
78*35238bceSAndroid Build Coastguard Worker
79*35238bceSAndroid Build Coastguard Worker	<xsl:template match="Section">
80*35238bceSAndroid Build Coastguard Worker		<div class="Section">
81*35238bceSAndroid Build Coastguard Worker			<h2><xsl:value-of select="@Description"/></h2>
82*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
83*35238bceSAndroid Build Coastguard Worker		</div>
84*35238bceSAndroid Build Coastguard Worker	</xsl:template>
85*35238bceSAndroid Build Coastguard Worker
86*35238bceSAndroid Build Coastguard Worker	<xsl:template match="ImageSet">
87*35238bceSAndroid Build Coastguard Worker		<div class="ImageSet">
88*35238bceSAndroid Build Coastguard Worker			<h3><xsl:value-of select="@Description"/></h3>
89*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
90*35238bceSAndroid Build Coastguard Worker		</div>
91*35238bceSAndroid Build Coastguard Worker	</xsl:template>
92*35238bceSAndroid Build Coastguard Worker
93*35238bceSAndroid Build Coastguard Worker	<xsl:template match="Image">
94*35238bceSAndroid Build Coastguard Worker		<div class="Image">
95*35238bceSAndroid Build Coastguard Worker			<xsl:value-of select="@Description"/><br/>
96*35238bceSAndroid Build Coastguard Worker			<img src="data:image/png;base64,{.}"/>
97*35238bceSAndroid Build Coastguard Worker		</div>
98*35238bceSAndroid Build Coastguard Worker	</xsl:template>
99*35238bceSAndroid Build Coastguard Worker
100*35238bceSAndroid Build Coastguard Worker	<xsl:template match="CompileInfo">
101*35238bceSAndroid Build Coastguard Worker		<div class="CompileInfo">
102*35238bceSAndroid Build Coastguard Worker			<h3 class="{@CompileStatus}"><xsl:value-of select="@Description"/></h3>
103*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
104*35238bceSAndroid Build Coastguard Worker		</div>
105*35238bceSAndroid Build Coastguard Worker	</xsl:template>
106*35238bceSAndroid Build Coastguard Worker
107*35238bceSAndroid Build Coastguard Worker	<xsl:template match="ShaderProgram">
108*35238bceSAndroid Build Coastguard Worker		<div class="CompileInfo">
109*35238bceSAndroid Build Coastguard Worker			<h3 class="{@LinkStatus}"><xsl:text>Shader Program</xsl:text></h3>
110*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
111*35238bceSAndroid Build Coastguard Worker		</div>
112*35238bceSAndroid Build Coastguard Worker	</xsl:template>
113*35238bceSAndroid Build Coastguard Worker
114*35238bceSAndroid Build Coastguard Worker	<xsl:template match="VertexShader">
115*35238bceSAndroid Build Coastguard Worker		<div class="Shader">
116*35238bceSAndroid Build Coastguard Worker			<h3 class="{@CompileStatus}"><xsl:text>Vertex Shader</xsl:text></h3>
117*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
118*35238bceSAndroid Build Coastguard Worker		</div>
119*35238bceSAndroid Build Coastguard Worker	</xsl:template>
120*35238bceSAndroid Build Coastguard Worker
121*35238bceSAndroid Build Coastguard Worker	<xsl:template match="FragmentShader">
122*35238bceSAndroid Build Coastguard Worker		<div class="Shader">
123*35238bceSAndroid Build Coastguard Worker			<h3 class="{@CompileStatus}"><xsl:text>Fragment Shader</xsl:text></h3>
124*35238bceSAndroid Build Coastguard Worker			<xsl:apply-templates/>
125*35238bceSAndroid Build Coastguard Worker		</div>
126*35238bceSAndroid Build Coastguard Worker	</xsl:template>
127*35238bceSAndroid Build Coastguard Worker
128*35238bceSAndroid Build Coastguard Worker	<xsl:template match="Number">
129*35238bceSAndroid Build Coastguard Worker		<xsl:value-of select="@Description"/><xsl:text>: </xsl:text><xsl:value-of select="."/><xsl:text> </xsl:text><xsl:value-of select="@Unit"/><br/>
130*35238bceSAndroid Build Coastguard Worker	</xsl:template>
131*35238bceSAndroid Build Coastguard Worker
132*35238bceSAndroid Build Coastguard Worker	<xsl:template match="Result">
133*35238bceSAndroid Build Coastguard Worker	</xsl:template>
134*35238bceSAndroid Build Coastguard Worker
135*35238bceSAndroid Build Coastguard Worker	<xsl:template match="Text">
136*35238bceSAndroid Build Coastguard Worker		<xsl:value-of select="."/><br/>
137*35238bceSAndroid Build Coastguard Worker	</xsl:template>
138*35238bceSAndroid Build Coastguard Worker
139*35238bceSAndroid Build Coastguard Worker	<xsl:template match="KernelSource">
140*35238bceSAndroid Build Coastguard Worker		<pre class="KernelSource"><xsl:value-of select="."/></pre>
141*35238bceSAndroid Build Coastguard Worker	</xsl:template>
142*35238bceSAndroid Build Coastguard Worker
143*35238bceSAndroid Build Coastguard Worker	<xsl:template match="ShaderSource">
144*35238bceSAndroid Build Coastguard Worker		<pre class="ShaderSource"><xsl:value-of select="."/></pre>
145*35238bceSAndroid Build Coastguard Worker	</xsl:template>
146*35238bceSAndroid Build Coastguard Worker
147*35238bceSAndroid Build Coastguard Worker	<xsl:template match="SpirVAssemblySource">
148*35238bceSAndroid Build Coastguard Worker		<pre class="SpirVAssemblySource"><xsl:value-of select="."/></pre>
149*35238bceSAndroid Build Coastguard Worker	</xsl:template>
150*35238bceSAndroid Build Coastguard Worker
151*35238bceSAndroid Build Coastguard Worker	<xsl:template match="InfoLog">
152*35238bceSAndroid Build Coastguard Worker		<pre class="InfoLog"><xsl:value-of select="."/></pre>
153*35238bceSAndroid Build Coastguard Worker	</xsl:template>
154*35238bceSAndroid Build Coastguard Worker
155*35238bceSAndroid Build Coastguard Worker	<xsl:template match="EglConfigSet">
156*35238bceSAndroid Build Coastguard Worker		<div class="Section">
157*35238bceSAndroid Build Coastguard Worker			<h2><xsl:value-of select="@Description"/></h2>
158*35238bceSAndroid Build Coastguard Worker			<table class="EglConfigList">
159*35238bceSAndroid Build Coastguard Worker				<tr>
160*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>ID</xsl:text></td>
161*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>R</xsl:text></td>
162*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>G</xsl:text></td>
163*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>B</xsl:text></td>
164*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>A</xsl:text></td>
165*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>D</xsl:text></td>
166*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>S</xsl:text></td>
167*35238bceSAndroid Build Coastguard Worker					<td class="ConfigListTitle"><xsl:text>mS</xsl:text></td>
168*35238bceSAndroid Build Coastguard Worker				</tr>
169*35238bceSAndroid Build Coastguard Worker				<xsl:apply-templates/>
170*35238bceSAndroid Build Coastguard Worker			</table>
171*35238bceSAndroid Build Coastguard Worker		</div>
172*35238bceSAndroid Build Coastguard Worker	</xsl:template>
173*35238bceSAndroid Build Coastguard Worker
174*35238bceSAndroid Build Coastguard Worker	<xsl:template match="EglConfig">
175*35238bceSAndroid Build Coastguard Worker		<tr>
176*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@ConfigID"/></td>
177*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@RedSize"/></td>
178*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@GreenSize"/></td>
179*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@BlueSize"/></td>
180*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@AlphaSize"/></td>
181*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@DepthSize"/></td>
182*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@StencilSize"/></td>
183*35238bceSAndroid Build Coastguard Worker			<td class="ConfigListValue"><xsl:value-of select="@Samples"/></td>
184*35238bceSAndroid Build Coastguard Worker		</tr>
185*35238bceSAndroid Build Coastguard Worker	</xsl:template>
186*35238bceSAndroid Build Coastguard Worker
187*35238bceSAndroid Build Coastguard Worker</xsl:stylesheet>
188