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