<?xml version="1.0"?>
<!DOCTYPE xsl:stylesheet [
        <!ENTITY space "&#32;">
        <!ENTITY nbsp "&#160;">
        <!-- either '&#8470;' for No, or '#' -->
        <!ENTITY no "#">
        ]>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
                xmlns:file="java.io.File"
                xmlns:redirect="http://xml.apache.org/xalan/redirect"
                extension-element-prefixes="file redirect"
        >
    <xsl:output method="xml" encoding="us-ascii" indent="yes" />



    <xsl:template match="/">

    <testsuites>
    
       
       <!-- generate a testuite for each webtest testresult -->
       <xsl:for-each select="/summary/testresult">
      
           <testsuite package="webtest"> 
 
              <xsl:attribute name="hostname">
                  <xsl:value-of select="config/parameter[@name='taskName']/@value"/>
              </xsl:attribute>           

              <xsl:attribute name="name">
                  <xsl:value-of select="@testspecname"/>
              </xsl:attribute>
              
              <xsl:attribute name="errors">
                  <xsl:value-of select="count(results/step/result/failed)"/>
              </xsl:attribute>

              <xsl:attribute name="id">
                  <xsl:number value="position()"/>
              </xsl:attribute>

              <xsl:attribute name="time">
                  <xsl:number value="sum(results/step/result/node()[name()='completed' or name()='failed']/@duration)"/>
              </xsl:attribute>              
              
              <xsl:attribute name="tests">
                  <xsl:number value="count(results/step)"/>
              </xsl:attribute>              

              <xsl:attribute name="timestamp">
                  <xsl:value-of select="@endtime"/>
              </xsl:attribute> 
              
                 <testcase classname="webtest">
                     <xsl:attribute name="hostname">
		          <xsl:value-of select="config/parameter[@name='taskName']/@value"/>
                      </xsl:attribute>   
                      
                     
                     <xsl:attribute name="name">
		          <xsl:value-of select="@testspecname"/>
                      </xsl:attribute>                       
                      
                      <xsl:if test="results/step/result/failed">
                         <error>
                            <xsl:attribute name="message">
			       <xsl:value-of select="results/failure/@message"/>
                             </xsl:attribute>
                             <xsl:value-of select="results/failure/@message"/>
                         </error>
                      </xsl:if>
                 </testcase>              
              
              
              <!-- for each step, generate a classname, each step is essentially a test -->
              <xsl:for-each select="results/step">
                 

              </xsl:for-each>
              
              <system-out/>
              <system-err/>
              
           </testsuite>   

      
       </xsl:for-each>
         </testsuites>       
   
    
    </xsl:template>

    
</xsl:stylesheet>
