<?xml version="1.0" encoding="utf-8"?>
<!--
    drawElements Quality Program utilities

    Copyright 2016 The Android Open Source Project

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

         http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
<xsl:stylesheet
	version="1.0"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
	xmlns="http://www.w3.org/1999/xhtml">

	<xsl:output method="xml" indent="yes" encoding="UTF-8"/>

	<xsl:template match="/">
		<xsl:apply-templates/>
	</xsl:template>

	<xsl:template match="BatchResult">
		<html>
			<head>
				<link href="testlog.css" rel="stylesheet" type="text/css"/>
				<title><xsl:value-of select="@FileName"/></title>
			</head>
			<body>
				<table class="Totals">
					<tr><td><b><xsl:text>Total cases</xsl:text></b></td><td><b><xsl:value-of select="ResultTotals/@All"/></b></td></tr>
					<tr><td><xsl:text>Pass</xsl:text></td><td class="Pass"><xsl:value-of select="ResultTotals/@Pass"/></td></tr>
					<tr><td><xsl:text>Fail</xsl:text></td><td class="Fail"><xsl:value-of select="ResultTotals/@Fail"/></td></tr>
					<tr><td><xsl:text>Quality warning</xsl:text></td><td class="QualityWarning"><xsl:value-of select="ResultTotals/@QualityWarning"/></td></tr>
					<tr><td><xsl:text>Compatibility warning</xsl:text></td><td class="CompatibilityWarning"><xsl:value-of select="ResultTotals/@CompatibilityWarning"/></td></tr>
					<!-- <tr><td><xsl:text>Pending</xsl:text></td><td class="Pending"><xsl:value-of select="ResultTotals/@pending"/></td></tr> -->
					<!-- <tr><td><xsl:text>Running</xsl:text></td><td class="Running"><xsl:value-of select="ResultTotals/@Running"/></td></tr> -->
					<tr><td><xsl:text>Not supported</xsl:text></td><td class="NotSupported"><xsl:value-of select="ResultTotals/@NotSupported"/></td></tr>
					<tr><td><xsl:text>Resource error</xsl:text></td><td class="ResourceError"><xsl:value-of select="ResultTotals/@ResourceError"/></td></tr>
					<tr><td><xsl:text>Internal error</xsl:text></td><td class="InternalError"><xsl:value-of select="ResultTotals/@InternalError"/></td></tr>
					<!-- <tr><td><xsl:text>Canceled</xsl:text></td><td class="Canceled"><xsl:value-of select="ResultTotals/@Canceled"/></td></tr> -->
					<tr><td><xsl:text>Timeout</xsl:text></td><td class="Timeout"><xsl:value-of select="ResultTotals/@Timeout"/></td></tr>
					<tr><td><xsl:text>Crash</xsl:text></td><td class="Crash"><xsl:value-of select="ResultTotals/@Crash"/></td></tr>
					<tr><td><xsl:text>Disabled</xsl:text></td><td class="Disabled"><xsl:value-of select="ResultTotals/@Disabled"/></td></tr>
					<!-- <tr><td><xsl:text>Terminated</xsl:text></td><td class="Terminated"><xsl:value-of select="ResultTotals/@Terminated"/></td></tr> -->
				</table>
				<xsl:apply-templates/>
			</body>
		</html>
	</xsl:template>

	<xsl:template match="/TestCaseResult">
		<html>
			<head>
				<link href="testlog.css" rel="stylesheet" type="text/css"/>
				<title><xsl:value-of select="@CasePath"/></title>
			</head>
			<body>
				<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>
				<xsl:apply-templates/>
			</body>
		</html>
	</xsl:template>

	<xsl:template match="BatchResult/TestCaseResult">
		<div class="TestCaseResult">
			<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>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="Section">
		<div class="Section">
			<h2><xsl:value-of select="@Description"/></h2>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="ImageSet">
		<div class="ImageSet">
			<h3><xsl:value-of select="@Description"/></h3>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="Image">
		<div class="Image">
			<xsl:value-of select="@Description"/><br/>
			<img src="data:image/png;base64,{.}"/>
		</div>
	</xsl:template>

	<xsl:template match="CompileInfo">
		<div class="CompileInfo">
			<h3 class="{@CompileStatus}"><xsl:value-of select="@Description"/></h3>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="ShaderProgram">
		<div class="CompileInfo">
			<h3 class="{@LinkStatus}"><xsl:text>Shader Program</xsl:text></h3>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="VertexShader">
		<div class="Shader">
			<h3 class="{@CompileStatus}"><xsl:text>Vertex Shader</xsl:text></h3>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="FragmentShader">
		<div class="Shader">
			<h3 class="{@CompileStatus}"><xsl:text>Fragment Shader</xsl:text></h3>
			<xsl:apply-templates/>
		</div>
	</xsl:template>

	<xsl:template match="Number">
		<xsl:value-of select="@Description"/><xsl:text>: </xsl:text><xsl:value-of select="."/><xsl:text> </xsl:text><xsl:value-of select="@Unit"/><br/>
	</xsl:template>

	<xsl:template match="Result">
	</xsl:template>

	<xsl:template match="Text">
		<xsl:value-of select="."/><br/>
	</xsl:template>

	<xsl:template match="KernelSource">
		<pre class="KernelSource"><xsl:value-of select="."/></pre>
	</xsl:template>

	<xsl:template match="ShaderSource">
		<pre class="ShaderSource"><xsl:value-of select="."/></pre>
	</xsl:template>

	<xsl:template match="SpirVAssemblySource">
		<pre class="SpirVAssemblySource"><xsl:value-of select="."/></pre>
	</xsl:template>

	<xsl:template match="InfoLog">
		<pre class="InfoLog"><xsl:value-of select="."/></pre>
	</xsl:template>

	<xsl:template match="EglConfigSet">
		<div class="Section">
			<h2><xsl:value-of select="@Description"/></h2>
			<table class="EglConfigList">
				<tr>
					<td class="ConfigListTitle"><xsl:text>ID</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>R</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>G</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>B</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>A</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>D</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>S</xsl:text></td>
					<td class="ConfigListTitle"><xsl:text>mS</xsl:text></td>
				</tr>
				<xsl:apply-templates/>
			</table>
		</div>
	</xsl:template>

	<xsl:template match="EglConfig">
		<tr>
			<td class="ConfigListValue"><xsl:value-of select="@ConfigID"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@RedSize"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@GreenSize"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@BlueSize"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@AlphaSize"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@DepthSize"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@StencilSize"/></td>
			<td class="ConfigListValue"><xsl:value-of select="@Samples"/></td>
		</tr>
	</xsl:template>

</xsl:stylesheet>
