diff options
Diffstat (limited to 'buildscripts/phing/etc')
-rw-r--r-- | buildscripts/phing/etc/VERSION.TXT | 1 | ||||
-rwxr-xr-x | buildscripts/phing/etc/coverage-frames.xsl | 1067 | ||||
-rwxr-xr-x | buildscripts/phing/etc/log.xsl | 216 | ||||
-rw-r--r-- | buildscripts/phing/etc/phing-grammar.rng | 5015 | ||||
-rwxr-xr-x | buildscripts/phing/etc/phpunit-frames.xsl | 694 | ||||
-rwxr-xr-x | buildscripts/phing/etc/phpunit-noframes.xsl | 448 | ||||
-rwxr-xr-x | buildscripts/phing/etc/str.replace.function.xsl | 105 |
7 files changed, 0 insertions, 7546 deletions
diff --git a/buildscripts/phing/etc/VERSION.TXT b/buildscripts/phing/etc/VERSION.TXT deleted file mode 100644 index 321d7fe1..00000000 --- a/buildscripts/phing/etc/VERSION.TXT +++ /dev/null @@ -1 +0,0 @@ -Phing 2.4.12
\ No newline at end of file diff --git a/buildscripts/phing/etc/coverage-frames.xsl b/buildscripts/phing/etc/coverage-frames.xsl deleted file mode 100755 index 251faff6..00000000 --- a/buildscripts/phing/etc/coverage-frames.xsl +++ /dev/null @@ -1,1067 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" - xmlns:exsl="http://exslt.org/common" - xmlns:date="http://exslt.org/dates-and-times" - extension-element-prefixes="exsl date"> -<xsl:output method="html" indent="yes"/> -<xsl:decimal-format decimal-separator="." grouping-separator="," /> -<!-- - Copyright 2001-2004 The Apache Software Foundation - - 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. - ---> - -<!-- - - Sample stylesheet to be used with Xdebug/Phing code coverage output. - Based on JProbe stylesheets from Apache Ant. - - It creates a set of HTML files a la javadoc where you can browse easily - through all packages and classes. - - @author Michiel Rook <a href="mailto:michiel.rook@gmail.com"/> - @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/> - ---> - -<!-- default output directory is current directory --> -<xsl:param name="output.dir" select="'.'"/> -<xsl:param name="output.sorttable" select="'.'"/> -<xsl:param name="document.title" select="''"/> - -<!-- ====================================================================== - Root element - ======================================================================= --> -<xsl:template match="/snapshot"> - <!-- create the index.html --> - <exsl:document href="efile://{$output.dir}/index.html"> - <xsl:call-template name="index.html"/> - </exsl:document> - - <!-- create the stylesheet.css --> - <exsl:document omit-xml-declaration="yes" href="efile://{$output.dir}/stylesheet.css"> - <xsl:call-template name="stylesheet.css"/> - </exsl:document> - - <!-- create the overview-packages.html at the root --> - <exsl:document href="efile://{$output.dir}/overview-summary.html"> - <xsl:apply-templates select="." mode="overview.packages"/> - </exsl:document> - - <!-- create the all-packages.html at the root --> - <exsl:document href="efile://{$output.dir}/overview-frame.html"> - <xsl:apply-templates select="." mode="all.packages"/> - </exsl:document> - - <!-- create the all-classes.html at the root --> - <exsl:document href="efile://{$output.dir}/allclasses-frame.html"> - <xsl:apply-templates select="." mode="all.classes"/> - </exsl:document> - - <!-- process all packages --> - <xsl:apply-templates select="./package" mode="write"/> - - <!-- process all subpackages --> - <xsl:apply-templates select="./package/subpackage" mode="write"/> -</xsl:template> - -<!-- ======================================================================= - Frameset definition. Entry point for the report. - 3 frames: packageListFrame, classListFrame, classFrame - ======================================================================= --> -<xsl:template name="index.html"> -<html> - <head><title><xsl:value-of select="$document.title"/> Coverage Results</title></head> - <frameset cols="20%,80%"> - <frameset rows="30%,70%"> - <frame src="overview-frame.html" name="packageListFrame"/> - <frame src="allclasses-frame.html" name="classListFrame"/> - </frameset> - <frame src="overview-summary.html" name="classFrame"/> - </frameset> - <noframes> - <h2>Frame Alert</h2> - <p> - This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. - </p> - </noframes> -</html> -</xsl:template> - -<!-- ======================================================================= - Stylesheet CSS used - ======================================================================= --> -<!-- this is the stylesheet css to use for nearly everything --> -<xsl:template name="stylesheet.css"> - <xsl:if test="$output.sorttable = 1"> - .sortable th { - cursor: pointer; - } - </xsl:if> - .bannercell { - border: 0px; - padding: 0px; - } - body { - margin-left: 10; - margin-right: 10; - background-color:#FFFFFF; - font-family: verdana,arial,sanserif; - color:#000000; - } - a { - color: #003399; - } - a:hover { - color: #888888; - } - .a td { - background: #efefef; - } - .b td { - background: #fff; - } - th, td { - text-align: left; - vertical-align: top; - } - th { - font-weight:bold; - background: #ccc; - color: black; - } - table, th, td { - font-size: 12px; - border: none - } - table.log tr td, tr th { - } - h2 { - font-weight:bold; - font-size: 12px; - margin-bottom: 5; - } - h3 { - font-size:100%; - font-weight: 12px; - background: #DFDFDF - color: white; - text-decoration: none; - padding: 5px; - margin-right: 2px; - margin-left: 2px; - margin-bottom: 0; - } - .small { - font-size: 9px; - } - td.legendItem { - font-weight: bold; - padding-bottom: 2px; - padding-right: 6px; - padding-top: 6px; - text-align: right; - } - td.legendValue { - color: #2E3436; - font-weight: bold; - padding-bottom: 2px; - padding-top: 6px; - text-align: left; - } - span.LegendCovered { - background-color: #8AE234; - margin-right: 2px; - padding-left: 10px; - padding-right: 10px; - text-align: center; - } - span.LegendUncovered { - background-color: #F0C8C8; - margin-right: 2px; - padding-left: 10px; - padding-right: 10px; - text-align: center; - } - span.LegendDeadCode { - background-color: #D3D7CF; - margin-right: 2px; - padding-left: 10px; - padding-right: 10px; - text-align: center; - } -TD.empty { - FONT-SIZE: 2px; BACKGROUND: #c0c0c0; BORDER:#9c9c9c 1px solid; - color: #c0c0c0; -} -TD.fullcover { - FONT-SIZE: 2px; BACKGROUND: #00df00; BORDER:#9c9c9c 1px solid; - color: #00df00; -} -TD.covered { - FONT-SIZE: 2px; BACKGROUND: #00df00; BORDER-LEFT:#9c9c9c 1px solid;BORDER-TOP:#9c9c9c 1px solid;BORDER-BOTTOM:#9c9c9c 1px solid; - color: #00df00; -} -TD.uncovered { - FONT-SIZE: 2px; BACKGROUND: #df0000; BORDER:#9c9c9c 1px solid; - color: #df0000; -} -PRE.srcLine { - BACKGROUND: #ffffff; MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; -} - PRE.srcLineUncovered { - BACKGROUND: #F0C8C8; MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; -} - PRE.srcLineCovered { - BACKGROUND: #8AE234; MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; - } - PRE.srcLineDeadCode { - BACKGROUND: #D3D7CF; MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; - } -td.lineCount, td.coverageCount { - BACKGROUND: #F0F0F0; PADDING-RIGHT: 3px; - text-align: right; -} - td.lineCountCovered, td.coverageCountCovered { - background: #8AE234; PADDING-RIGHT: 3px; - text-align: right; -} - td.srcLineCovered { - background: #8AE234; - } - td.lineCountUncovered, td.coverageCountUncovered { - background: #F0C8C8; PADDING-RIGHT: 3px; - text-align: right; -} - td.srcLineUncovered { - background: #F0C8C8; -} - td.lineCountDeadCode, td.coverageCountDeadCode { - background: #D3D7CF; PADDING-RIGHT: 3px; - text-align: right; - } - td.srcLineDeadCode { - background: #D3D7CF; - } -td.srcLine { - background: #C8C8F0; -} -TD.srcLineClassStart { - WIDTH: 100%; BORDER-TOP:#dcdcdc 1px solid; FONT-WEIGHT: bold; -} -.srcLine , .srcLine ol, .srcLine ol li {margin: 0;} -.srcLine .de1, .srcLine .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal;} -.srcLine .imp {font-weight: bold; color: red;} -.srcLine .kw1 {color: #b1b100;} -.srcLine .kw2 {color: #000000; font-weight: bold;} -.srcLine .kw3 {color: #000066;} -.srcLine .co1 {color: #808080; font-style: italic;} -.srcLine .co2 {color: #808080; font-style: italic;} -.srcLine .coMULTI {color: #808080; font-style: italic;} -.srcLine .es0 {color: #000099; font-weight: bold;} -.srcLine .br0 {color: #66cc66;} -.srcLine .st0 {color: #ff0000;} -.srcLine .nu0 {color: #cc66cc;} -.srcLine .me1 {color: #006600;} -.srcLine .me2 {color: #006600;} -.srcLine .re0 {color: #0000ff;} -</xsl:template> - -<!-- ======================================================================= - List of all classes in all packages - This will be the first page in the classListFrame - ======================================================================= --> -<xsl:template match="snapshot" mode="all.classes"> - <html> - <head> - <xsl:call-template name="create.stylesheet.link"/> - </head> - <body> - <h2>All Classes</h2> - <table width="100%"> - <xsl:for-each select="package/class"> - <xsl:sort select="@name"/> - <xsl:variable name="package.name" select="(ancestor::package)[last()]/@name"/> - <xsl:variable name="link"> - <xsl:if test="not($package.name='')"> - <xsl:value-of select="translate($package.name,'._','//')"/><xsl:text>/</xsl:text> - </xsl:if><xsl:value-of select="@name"/><xsl:text>.html</xsl:text> - </xsl:variable> - <tr> - <td nowrap="nowrap"> - <a target="classFrame" href="{$link}"><xsl:value-of select="@name"/></a> - <xsl:choose> - <xsl:when test="@totalcount=0"> - <i> (-)</i> - </xsl:when> - <xsl:otherwise> - <i> (<xsl:value-of select="format-number(@totalcovered div @totalcount, '0.0%')"/>)</i> - </xsl:otherwise> - </xsl:choose> - </td> - </tr> - </xsl:for-each> - <xsl:for-each select="package/subpackage/class"> - <xsl:sort select="@name"/> - <xsl:variable name="package.name" select="(ancestor::package)[last()]/@name"/> - <xsl:variable name="subpackage.name" select="(ancestor::subpackage)[last()]/@name"/> - <xsl:variable name="link"> - <xsl:if test="not($package.name='')"> - <xsl:value-of select="translate($package.name,'._','//')"/><xsl:text>/</xsl:text> - </xsl:if> - <xsl:if test="not($subpackage.name='')"> - <xsl:value-of select="translate($subpackage.name,'._','//')"/><xsl:text>/</xsl:text> - </xsl:if> - <xsl:value-of select="@name"/><xsl:text>.html</xsl:text> - </xsl:variable> - <tr> - <td nowrap="nowrap"> - <a target="classFrame" href="{$link}"><xsl:value-of select="@name"/></a> - <xsl:choose> - <xsl:when test="@totalcount=0"> - <i> (-)</i> - </xsl:when> - <xsl:otherwise> - <i> (<xsl:value-of select="format-number(@totalcovered div @totalcount, '0.0%')"/>)</i> - </xsl:otherwise> - </xsl:choose> - </td> - </tr> - </xsl:for-each> - </table> - </body> - </html> -</xsl:template> - -<!-- list of all packages --> -<xsl:template match="snapshot" mode="all.packages"> - <html> - <head> - <xsl:call-template name="create.stylesheet.link"/> - </head> - <body> - <h2><a href="overview-summary.html" target="classFrame">Overview</a></h2> - <h2>All Packages</h2> - <table width="100%"> - <xsl:for-each select="package"> - <xsl:sort select="@name" order="ascending"/> - <tr> - <td nowrap="nowrap"> - <a href="{translate(@name,'._','//')}/package-summary.html" target="classFrame"> - <xsl:value-of select="@name"/> - </a> - </td> - </tr> - </xsl:for-each> - </table> - </body> - </html> -</xsl:template> - -<!-- overview of statistics in packages --> -<xsl:template match="snapshot" mode="overview.packages"> - <html> - <head> - <title>Coverage Results Overview</title> - <xsl:if test="$output.sorttable = 1"> - <script language="JavaScript" src="http://www.phing.info/support/sorttable.js"/> - </xsl:if> - <xsl:call-template name="create.stylesheet.link"/> - </head> - <body onload="open('allclasses-frame.html','classListFrame')"> - <xsl:call-template name="pageHeader"/> - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr class="a"> - <td class="small">Packages: <xsl:value-of select="count(package)"/></td> - <td class="small">Subpackages: <xsl:value-of select="count(package/subpackage)"/></td> - <td class="small">Classes: <xsl:value-of select="count(package/class) + count(package/subpackage/class)"/></td> - <td class="small">Methods: <xsl:value-of select="@methodcount"/></td> - <td class="small">LOC: <xsl:value-of select="count(package/class/sourcefile/sourceline) + count(package/subpackage/class/sourcefile/sourceline)"/></td> - <td class="small">Statements: <xsl:value-of select="@statementcount"/></td> - </tr> - </table> - <br/> - - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%" nowrap="nowrap"></th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <tr class="a"> - <td><b>Project <xsl:value-of select="$document.title"/></b></td> - <xsl:call-template name="stats.formatted"/> - </tr> - <tr><td colspan="4"><br/></td></tr> - </table> - - <table class="log sortable" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%">Packages</th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <!-- display packages and sort them via their coverage rate --> - <xsl:for-each select="package"> - <xsl:sort data-type="number" select="@totalcovered div @totalcount"/> - <tr> - <xsl:call-template name="alternate-row"/> - <td><a href="{translate(@name,'._','//')}/package-summary.html"><xsl:value-of select="@name"/></a></td> - <xsl:call-template name="stats.formatted"/> - </tr> - </xsl:for-each> - </table> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - -<!-- - detailed info for a package. It will output the list of classes -, the summary page, and the info for each class ---> -<xsl:template match="package" mode="write"> - <xsl:variable name="package.dir"> - <xsl:if test="not(@name = '')"><xsl:value-of select="translate(@name,'._','//')"/></xsl:if> - <xsl:if test="@name = ''">.</xsl:if> - </xsl:variable> - - <!-- create a classes-list.html in the package directory --> - <exsl:document href="efile://{$output.dir}/{$package.dir}/package-frame.html"> - <xsl:apply-templates select="." mode="classes.list"/> - </exsl:document> - - <!-- create a package-summary.html in the package directory --> - <exsl:document href="efile://{$output.dir}/{$package.dir}/package-summary.html"> - <xsl:apply-templates select="." mode="package.summary"/> - </exsl:document> - - <!-- for each class in package, creates a @name.html --> - <xsl:for-each select="./class"> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{@name}.html"> - <xsl:apply-templates select="." mode="class.details"/> - </exsl:document> - </xsl:for-each> - - <!-- for each class in subpackage, creates a @name.html --> - <xsl:for-each select="subpackage"> - <xsl:variable name="subpackage.dir"> - <xsl:if test="not(@name = '')"><xsl:value-of select="translate(@name,'._','//')"/></xsl:if> - <xsl:if test="@name = ''">.</xsl:if> - </xsl:variable> - <xsl:for-each select="./class"> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{$subpackage.dir}/{@name}.html"> - <xsl:apply-templates select="." mode="class.details"/> - </exsl:document> - </xsl:for-each> - </xsl:for-each> -</xsl:template> - -<!-- - detailed info for a subpackage. It will output the list of classes and the summary page ---> -<xsl:template match="subpackage" mode="write"> - <xsl:variable name="package.name" select="(ancestor::package)[last()]/@name"/> - - <xsl:variable name="package.dir"> - <xsl:if test="not($package.name = '')"><xsl:value-of select="translate($package.name,'._','//')"/></xsl:if> - <xsl:if test="$package.name = ''">.</xsl:if> - </xsl:variable> - - <xsl:variable name="subpackage.dir"> - <xsl:if test="not(@name = '')"><xsl:value-of select="translate(@name,'._','//')"/></xsl:if> - <xsl:if test="@name = ''">.</xsl:if> - </xsl:variable> - - <!-- create a classes-list.html in the subpackage directory --> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{$subpackage.dir}/subpackage-frame.html"> - <xsl:apply-templates select="." mode="classes.list"/> - </exsl:document> - - <!-- create a subpackage-summary.html in the subpackage directory --> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{$subpackage.dir}/subpackage-summary.html"> - <xsl:apply-templates select="." mode="subpackage.summary"/> - </exsl:document> -</xsl:template> - -<!-- list of classes in a package --> -<xsl:template match="package" mode="classes.list"> - <html> - <head> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="@name"/> - </xsl:call-template> - </head> - <body> - <table width="100%"> - <tr> - <td nowrap="nowrap"> - <H2><a href="package-summary.html" target="classFrame"><xsl:value-of select="@name"/></a></H2> - </td> - </tr> - </table> - - <h2>Subpackages</h2> - <table width="100%"> - <xsl:for-each select="subpackage"> - <xsl:sort select="@name"/> - <tr> - <td nowrap="nowrap"> - <a href="{translate(@name,'._','//')}/subpackage-summary.html" target="classFrame"><xsl:value-of select="@name"/></a> - <xsl:choose> - <xsl:when test="@totalcount=0"> - <i> (-)</i> - </xsl:when> - <xsl:otherwise> - <i> (<xsl:value-of select="format-number(@totalcovered div @totalcount, '0.0%')"/>)</i> - </xsl:otherwise> - </xsl:choose> - </td> - </tr> - </xsl:for-each> - </table> - - <h2>Classes</h2> - <table width="100%"> - <xsl:for-each select="class"> - <xsl:sort select="@name"/> - <tr> - <td nowrap="nowrap"> - <a href="{@name}.html" target="classFrame"><xsl:value-of select="@name"/></a> - <xsl:choose> - <xsl:when test="@totalcount=0"> - <i> (-)</i> - </xsl:when> - <xsl:otherwise> - <i>(<xsl:value-of select="format-number(@totalcovered div @totalcount, '0.0%')"/>)</i> - </xsl:otherwise> - </xsl:choose> - </td> - </tr> - </xsl:for-each> - </table> - </body> - </html> -</xsl:template> - -<!-- list of classes in a subpackage --> -<xsl:template match="subpackage" mode="classes.list"> - <xsl:variable name="fullpackage.name"> - <xsl:value-of select="(ancestor::package)[last()]/@name"/> - <!-- append subpackage name if exists --> - <xsl:if test="not(@name='')"> - <xsl:choose> - <!-- determine path separator --> - <xsl:when test="contains((ancestor::package)[last()]/@name, '_') or contains(@name, '_')"> - <xsl:text>_</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>.</xsl:text> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="@name"/> - </xsl:if> - </xsl:variable> - - <xsl:variable name="package.name" select="(ancestor::package)[last()]/@name"/> - - <html> - <head> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="$fullpackage.name"/> - </xsl:call-template> - </head> - <body> - <table width="100%"> - <tr> - <td nowrap="nowrap"> - <H2> - <xsl:call-template name="create.package-summary.link"> - <xsl:with-param name="package.name" select="$package.name"/> - <xsl:with-param name="fullpackage.name" select="$fullpackage.name"/> - </xsl:call-template>::<a href="subpackage-summary.html" target="classFrame"><xsl:value-of select="@name"/></a> - </H2> - </td> - </tr> - </table> - - <h2>Classes</h2> - <table width="100%"> - <xsl:for-each select="class"> - <xsl:sort select="@name"/> - <tr> - <td nowrap="nowrap"> - <a href="{@name}.html" target="classFrame"><xsl:value-of select="@name"/></a> - <xsl:choose> - <xsl:when test="@totalcount=0"> - <i> (-)</i> - </xsl:when> - <xsl:otherwise> - <i> (<xsl:value-of select="format-number(@totalcovered div @totalcount, '0.0%')"/>)</i> - </xsl:otherwise> - </xsl:choose> - </td> - </tr> - </xsl:for-each> - </table> - </body> - </html> -</xsl:template> - -<!-- summary of a package --> -<xsl:template match="package" mode="package.summary"> - <html> - <head> - <title>Coverage Results for <xsl:value-of select="@name"/></title> - <xsl:if test="$output.sorttable = 1"> - <script language="JavaScript" src="http://www.phing.info/support/sorttable.js"/> - </xsl:if> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="@name"/> - </xsl:call-template> - </head> - <!-- when loading this package, it will open the classes into the frame --> - <body onload="open('package-frame.html','classListFrame')"> - <xsl:call-template name="pageHeader"/> - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr class="a"> - <td class="small">Subpackages: <xsl:value-of select="count(subpackage)"/></td> - <td class="small">Classes: <xsl:value-of select="count(class) + count(subpackage/class)"/></td> - <td class="small">Methods: <xsl:value-of select="@methodcount"/></td> - <td class="small">LOC: <xsl:value-of select="count(class/sourcefile/sourceline) + count(subpackage/class/sourcefile/sourceline)"/></td> - <td class="small">Statements: <xsl:value-of select="@statementcount"/></td> - </tr> - </table> - <br/> - - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%">Package</th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <xsl:apply-templates select="." mode="stats"/> - <tr> - <td colspan="5"><br/></td> - </tr> - </table> - - <xsl:if test="count(subpackage) > 0"> - <table class="log sortable" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%">Subpackages</th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <xsl:apply-templates select="subpackage" mode="stats"> - <xsl:sort data-type="number" select="@totalcovered div @totalcount"/> - </xsl:apply-templates> - <tr> - <td colspan="5"><br/></td> - </tr> - </table> - </xsl:if> - - <xsl:if test="count(class) > 0"> - <table class="log sortable" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%">Classes</th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <xsl:apply-templates select="class" mode="stats"> - <xsl:sort data-type="number" select="@totalcovered div @totalcount"/> - </xsl:apply-templates> - </table> - </xsl:if> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - -<!-- summary of a subpackage --> -<xsl:template match="subpackage" mode="subpackage.summary"> - <xsl:variable name="fullpackage.name"> - <xsl:value-of select="(ancestor::package)[last()]/@name"/> - <!-- append subpackage name if exists --> - <xsl:if test="not(@name='')"> - <xsl:choose> - <!-- determine path separator --> - <xsl:when test="contains((ancestor::package)[last()]/@name, '_') or contains(@name, '_')"> - <xsl:text>_</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>.</xsl:text> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="@name"/> - </xsl:if> - </xsl:variable> - - <html> - <head> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="$fullpackage.name"/> - </xsl:call-template> - </head> - <!-- when loading this subpackage, it will open the classes into the frame --> - <body onload="open('subpackage-frame.html','classListFrame')"> - <xsl:call-template name="pageHeader"/> - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr class="a"> - <td class="small">Classes: <xsl:value-of select="count(class)"/></td> - <td class="small">Methods: <xsl:value-of select="@methodcount"/></td> - <td class="small">LOC: <xsl:value-of select="count(class/sourcefile/sourceline)"/></td> - <td class="small">Statements: <xsl:value-of select="@statementcount"/></td> - </tr> - </table> - <br/> - - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%">Subpackage</th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <xsl:apply-templates select="." mode="stats.summary"/> - - <xsl:if test="count(class) > 0"> - <tr> - <td colspan="3"><br/></td> - </tr> - <tr> - <th width="100%">Classes</th> - <th>Statements</th> - <th>Methods</th> - <th width="350" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <xsl:apply-templates select="class" mode="stats"> - <xsl:sort data-type="number" select="@totalcovered div @totalcount"/> - </xsl:apply-templates> - </xsl:if> - </table> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - -<!-- details of a class --> -<xsl:template match="class" mode="class.details"> - <xsl:variable name="subpackage.name" select="(ancestor::subpackage)[last()]/@name"/> - - <xsl:variable name="fullpackage.name"> - <xsl:value-of select="(ancestor::package)[last()]/@name"/> - <!-- append subpackage name if exists --> - <xsl:if test="not($subpackage.name='')"> - <xsl:choose> - <!-- determine path/package separator --> - <xsl:when test="contains((ancestor::package)[last()]/@name, '_') or contains($subpackage.name, '_')"> - <xsl:text>_</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>.</xsl:text> - </xsl:otherwise> - </xsl:choose> - <xsl:value-of select="$subpackage.name"/> - </xsl:if> - </xsl:variable> - - <html> - <head> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="$fullpackage.name"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="pageHeader"/> - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr class="a"> - <td class="small">Methods: <xsl:value-of select="@methodcount"/></td> - <td class="small">LOC: <xsl:value-of select="count(sourcefile/sourceline)"/></td> - <td class="small">Statements: <xsl:value-of select="@statementcount"/></td> - </tr> - </table> - - <!-- legend --> - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tbody> - <tr> - <td class="legendItem" width="0%">Legend:</td> - <td class="legendValue" width="100%"> - <span class="legendCovered">executed</span> - <span class="legendUncovered">not executed</span> - <span class="legendDeadCode">dead code</span> - </td> - </tr> - </tbody> - </table> - - <!-- class summary --> - <table class="log" cellpadding="5" cellspacing="0" width="100%"> - <tr> - <th width="100%">Source file</th> - <th>Statements</th> - <th>Methods</th> - <th width="250" colspan="2" nowrap="nowrap">Total coverage</th> - </tr> - <tr> - <xsl:call-template name="alternate-row"/> - <td><xsl:value-of select="sourcefile/@name"/></td> - <xsl:call-template name="stats.formatted"/> - </tr> - </table> - <table cellspacing="0" cellpadding="0" width="100%"> - <xsl:apply-templates select="sourcefile/sourceline"/> - </table> - <br/> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - -<!-- Page Header --> -<xsl:template name="pageHeader"> - <!-- jakarta logo --> - <table border="0" cellpadding="0" cellspacing="0" width="100%"> - <tr> - <td class="bannercell" rowspan="2"> - <a href="http://www.phing.info/"> - <img src="http://www.phing.info/images/phing.gif" alt="http://www.phing.info/" align="left" border="0"/> - </a> - </td> - <td style="text-align:right"><h2>Source Code Coverage</h2></td> - </tr> - <tr> - <td style="text-align:right">Designed for use with <a href='http://www.phpunit.de'>PHPUnit</a>, <a href='http://www.xdebug.org/'>Xdebug</a> and <a href='http://www.phing.info/'>Phing</a>.</td> - </tr> - </table> - <hr size="1"/> -</xsl:template> - -<!-- Page Footer --> -<xsl:template name="pageFooter"> - <table width="100%"> - <tr><td><hr noshade="yes" size="1"/></td></tr> - <tr><td class="small">Report generated at <xsl:value-of select="date:date-time()"/></td></tr> - </table> -</xsl:template> - -<xsl:template match="package" mode="stats"> - <tr> - <xsl:call-template name="alternate-row"/> - <td><xsl:value-of select="@name"/></td> - <xsl:call-template name="stats.formatted"/> - </tr> -</xsl:template> - -<xsl:template match="subpackage" mode="stats"> - <tr> - <xsl:call-template name="alternate-row"/> - <td><a href="{translate(@name,'._','//')}/subpackage-summary.html" target="classFrame"><xsl:value-of select="@name"/></a></td> - <xsl:call-template name="stats.formatted"/> - </tr> -</xsl:template> - -<xsl:template match="subpackage" mode="stats.summary"> - <tr> - <xsl:call-template name="alternate-row"/> - <td><xsl:value-of select="@name"/></td> - <xsl:call-template name="stats.formatted"/> - </tr> -</xsl:template> - -<xsl:template match="class" mode="stats"> - <tr> - <xsl:call-template name="alternate-row"/> - <td><a href="{@name}.html" target="classFrame"><xsl:value-of select="@name"/></a></td> - <xsl:call-template name="stats.formatted"/> - </tr> -</xsl:template> - -<xsl:template name="stats.formatted"> - <xsl:choose> - <xsl:when test="@statementcount=0"> - <td>-</td> - </xsl:when> - <xsl:otherwise> - <td> - <xsl:value-of select="format-number(@statementscovered div @statementcount,'0.0%')"/> - </td> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="@methodcount=0"> - <td>-</td> - </xsl:when> - <xsl:otherwise> - <td> - <xsl:value-of select="format-number(@methodscovered div @methodcount,'0.0%')"/> - </td> - </xsl:otherwise> - </xsl:choose> - <xsl:choose> - <xsl:when test="@totalcount=0"> - <td>-</td> - <td> - <table cellspacing="0" cellpadding="0" border="0" width="100%" style="display: inline"> - <tr> - <td class="empty" width="200" height="12"> </td> - </tr> - </table> - </td> - </xsl:when> - <xsl:otherwise> - <td> - <xsl:value-of select="format-number(@totalcovered div @totalcount,'0.0%')"/> - </td> - <td> - <xsl:variable name="leftwidth"><xsl:value-of select="format-number((@totalcovered * 200) div @totalcount,'0')"/></xsl:variable> - <xsl:variable name="rightwidth"><xsl:value-of select="format-number(200 - (@totalcovered * 200) div @totalcount,'0')"/></xsl:variable> - <table cellspacing="0" cellpadding="0" border="0" width="100%" style="display: inline"> - <tr> - <xsl:choose> - <xsl:when test="$leftwidth=200"> - <td class="fullcover" width="200" height="12"> </td> - </xsl:when> - <xsl:otherwise> - <xsl:if test="not($leftwidth=0)"> - <td class="covered" width="{$leftwidth}" height="12"> </td> - </xsl:if> - <xsl:if test="not($rightwidth=0)"> - <td class="uncovered" width="{$rightwidth}" height="12"> </td> - </xsl:if> - </xsl:otherwise> - </xsl:choose> - </tr> - </table> - </td> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template match="sourceline"> - <tr> - <xsl:if test="@coveredcount>0"> - <td class="lineCountCovered"><xsl:value-of select="position()"/></td> - <td class="lineCountCovered"><xsl:value-of select="@coveredcount"/></td> - </xsl:if> - <xsl:if test="@coveredcount=-1"> - <td class="lineCountUncovered"><xsl:value-of select="position()"/></td> - <td class="coverageCountUncovered"></td> - </xsl:if> - <xsl:if test="@coveredcount=-2"> - <td class="lineCountDeadCode"><xsl:value-of select="position()"/></td> - <td class="coverageCountDeadCode"></td> - </xsl:if> - <xsl:if test="@coveredcount=0"> - <td class="lineCount"><xsl:value-of select="position()"/></td> - <td class="coverageCount"></td> - </xsl:if> - - <xsl:if test="@coveredcount>0"> - <td class="srcLineCovered"> - <xsl:if test="@startclass=1"> - <xsl:attribute name="class">srcLineClassStart</xsl:attribute> - </xsl:if> - <pre class="srcLineCovered"><xsl:value-of select="."/></pre> - </td> - </xsl:if> - <xsl:if test="@coveredcount=-1"> - <td class="srcLineUncovered"> - <xsl:if test="@startclass=1"> - <xsl:attribute name="class">srcLineClassStart</xsl:attribute> - </xsl:if> - <pre class="srcLineUncovered"><xsl:value-of select="."/></pre> - </td> - </xsl:if> - <xsl:if test="@coveredcount=-2"> - <td class="srcLineDeadCode"> - <xsl:if test="@startclass=1"> - <xsl:attribute name="class">srcLineClassStart</xsl:attribute> - </xsl:if> - <pre class="srcLineDeadCode"><xsl:value-of select="."/></pre> - </td> - </xsl:if> - <xsl:if test="@coveredcount=0"> - <td> - <xsl:if test="@startclass=1"> - <xsl:attribute name="class">srcLineClassStart</xsl:attribute> - </xsl:if> - <pre class="srcLine"><xsl:value-of select="."/></pre> - </td> - </xsl:if> - </tr> -</xsl:template> - -<!-- - transform string like a.b.c to ../../../ - transform string like a_b_c to ../../../ - @param path the path to transform into a descending directory path ---> -<xsl:template name="path"> - <xsl:param name="path"/> - <xsl:if test="contains($path,'.')"> - <xsl:text>../</xsl:text> - <xsl:call-template name="path"> - <xsl:with-param name="path"><xsl:value-of select="substring-after($path,'.')"/></xsl:with-param> - </xsl:call-template> - </xsl:if> - <xsl:if test="contains($path,'_')"> - <xsl:text>../</xsl:text> - <xsl:call-template name="path"> - <xsl:with-param name="path"><xsl:value-of select="substring-after($path,'_')"/></xsl:with-param> - </xsl:call-template> - </xsl:if> - <xsl:if test="not(contains($path,'.')) and not(contains($path,'_')) and not($path = '')"> - <xsl:text>../</xsl:text> - </xsl:if> -</xsl:template> - -<!-- create the link to the stylesheet based on the package name --> -<xsl:template name="create.stylesheet.link"> - <xsl:param name="package.name"/> - <LINK REL ="stylesheet" TYPE="text/css" TITLE="Style"><xsl:attribute name="href"><xsl:if test="not($package.name = 'unnamed package')"><xsl:call-template name="path"><xsl:with-param name="path" select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></LINK> -</xsl:template> - -<!-- create the link to the package summary --> -<xsl:template name="create.package-summary.link"> - <xsl:param name="package.name"/> - <xsl:param name="fullpackage.name"/> - <a target="classFrame"> - <xsl:attribute name="href"> - <xsl:if test="not($fullpackage.name = 'unnamed package')"> - <xsl:call-template name="path"> - <xsl:with-param name="path" select="$fullpackage.name"/> - </xsl:call-template> - </xsl:if> - <xsl:value-of select="translate($package.name,'._','//')"/>/package-summary.html</xsl:attribute> - <xsl:value-of select="$package.name"/> - </a> -</xsl:template> - -<!-- alternated row style --> -<xsl:template name="alternate-row"> -<xsl:attribute name="class"> - <xsl:if test="position() mod 2 = 1">a</xsl:if> - <xsl:if test="position() mod 2 = 0">b</xsl:if> -</xsl:attribute> -</xsl:template> - -</xsl:stylesheet> diff --git a/buildscripts/phing/etc/log.xsl b/buildscripts/phing/etc/log.xsl deleted file mode 100755 index f0ef4695..00000000 --- a/buildscripts/phing/etc/log.xsl +++ /dev/null @@ -1,216 +0,0 @@ -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> -<xsl:output method="html" indent="yes" encoding="US-ASCII"/> -<!-- - Copyright 2000-2004 The Apache Software Foundation - - 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. - ---> - -<!-- - - The purpose have this XSL is to provide a nice way to look at the output - from the Ant XmlLogger (ie: ant -listener org.apache.tools.ant.XmlLogger ) - - @author <a href="mailto:michiel.rook@gmail.com>Michiel Rook</a> - @author <a href="mailto:sbailliez@apache.org">Stephane Bailliez</a> - ---> -<xsl:decimal-format decimal-separator="." grouping-separator="," /> - -<xsl:template match="/"> -<html> - <head> - <title>Phing Build Log</title> - <style type="text/css"> - .bannercell { - border: 0px; - padding: 0px; - } - body { - margin: 0; - font:normal 100% arial,helvetica,sanserif; - background-color:#FFFFFF; - color:#000000; - } - table.status { - font:bold 80% arial,helvetica,sanserif; - background-color:#525D76; - color:#ffffff; - } - table.log tr td, tr th { - font-size: 80%; - } - .error { - color:red; - } - .warn { - color:brown; - } - .info { - color:gray; - } - .debug{ - color:gray; - } - .failed { - font-size:80%; - background-color: red; - color:#FFFFFF; - font-weight: bold - } - .complete { - font-size:80%; - background-color: #525D76; - color:#FFFFFF; - font-weight: bold - } - .a td { - background: #efefef; - } - .b td { - background: #fff; - } - th, td { - text-align: left; - vertical-align: top; - } - th { - background: #ccc; - color: black; - } - table, th, td { - border: none - } - h3 { - font:bold 80% arial,helvetica,sanserif; - background: #525D76; - color: white; - text-decoration: none; - padding: 5px; - margin-right: 2px; - margin-left: 2px; - margin-bottom: 0; - } - a { - color: #003399; - } - a:hover { - color: #888888; - } - </style> - </head> - <body> - <!-- jakarta logo --> - <table border="0" cellpadding="0" cellspacing="0" width="100%"> - <tr> - <td valign="top" class="bannercell"> - <a href="http://phing.info/"> - <img src="http://phing.info/images/phing.gif" alt="http://phing.info/" align="left" border="0"/> - </a> - </td> - <td style="text-align:right;vertical-align:bottom"> - <a href="http://phing.info/">Phing</a> - </td> - </tr> - </table> - - <table border="0" width="100%"> - <tr><td><hr noshade="yes" size="1"/></td></tr> - </table> - - <xsl:apply-templates select="build"/> - - <!-- FOOTER --> - <table width="100%"> - <tr><td><hr noshade="yes" size="1"/></td></tr> - <tr><td> - <div align="center"><font color="#525D76" size="-1"><em> - <a href="http://phing.info/">Phing</a> - </em></font></div> - </td></tr> - </table> - </body> -</html> -</xsl:template> - -<xsl:template match="build"> - <!-- build status --> - <table width="100%"> - <xsl:attribute name="class"> - <xsl:if test="@error">failed</xsl:if> - <xsl:if test="not(@error)">complete</xsl:if> - </xsl:attribute> - <tr> - <xsl:if test="@error"> - <td nowrap="yes">Build Failed</td> - </xsl:if> - <xsl:if test="not(@error)"> - <td nowrap="yes">Build Complete</td> - </xsl:if> - <td style="text-align:right" nowrap="yes">Total Time: <xsl:value-of select="@time"/></td> - </tr> - <tr> - <td colspan="2"> - <xsl:if test="@error"> - <tt><xsl:value-of select="@error"/></tt><br/> - <i style="font-size:80%">See the <a href="#stacktrace" alt="Click for details">stacktrace</a>.</i> - </xsl:if> - </td> - </tr> - </table> - <table border="1" cellspacing="2" cellpadding="3" width="100%" style="font-size:80%"> - <tr class="a"><td width="1">phing.file</td><td><xsl:value-of select="substring-after(//message[contains(text(),'phing.file')], '->')"/></td></tr> - <tr class="b"><td width="1">phing.version</td><td><xsl:value-of select="substring-after(//message[contains(text(),'phing.version')], '->')"/></td></tr> - </table> - <!-- build information --> - <h3>Build events</h3> - <table class="log" border="1" cellspacing="2" cellpadding="3" width="100%"> - <tr> - <th nowrap="yes" align="left" width="1%">target</th> - <th nowrap="yes" align="left" width="1%">task</th> - <th nowrap="yes" align="left">message</th> - </tr> - <xsl:apply-templates select=".//message[@priority != 'debug']"/> - </table> - <p> - <!-- stacktrace --> - <xsl:if test="stacktrace"> - <a name="stacktrace"/> - <h3>Error details</h3> - <table width="100%"> - <tr><td> - <pre><xsl:value-of select="stacktrace"/></pre> - </td></tr> - </table> - </xsl:if> - </p> -</xsl:template> - -<!-- report every message but those with debug priority --> -<xsl:template match="message[@priority!='debug']"> - <tr valign="top"> - <!-- alternated row style --> - <xsl:attribute name="class"> - <xsl:if test="position() mod 2 = 1">a</xsl:if> - <xsl:if test="position() mod 2 = 0">b</xsl:if> - </xsl:attribute> - <td nowrap="yes" width="1%"><xsl:value-of select="../../@name"/></td> - <td nowrap="yes" style="text-align:right" width="1%">[ <xsl:value-of select="../@name"/> ]</td> - <td class="{@priority}" nowrap="yes"> - <xsl:value-of select="text()"/> - </td> - </tr> -</xsl:template> - -</xsl:stylesheet> diff --git a/buildscripts/phing/etc/phing-grammar.rng b/buildscripts/phing/etc/phing-grammar.rng deleted file mode 100644 index 7f0351ce..00000000 --- a/buildscripts/phing/etc/phing-grammar.rng +++ /dev/null @@ -1,5015 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - -File $Id: cf64bd85a79d1a3be75c42eab1ac6100a05f3a30 $ - -License GNU LGPL (http://www.gnu.org/copyleft/lgpl.html) - -Author Johan Persson, johanp@aditus.nu ---> -<!-- - ================================================================================== - - Relax-NG XML Schema For Phing build XML scripts. (See http://www.relaxng.org) - - The purpose of this schema is to facilitate the writing of correct Phing build - scripts in a XML and schema aware editor. The schema will help the editor verify - the input as well as providing tag completion making it easier and faster to - write correct Phing build scripts. - - It can also be used together with one of the many existing R-NG validators to - validate a Phing script for adherence to the Phing syntax, like a "lint" - for Phing scripts. - - Note however that it is actually impossible to write a generic schema for - Phing since it is possible to define new elements dynamically which means - that the grammar can never be complete. - - However, in a particular setup only a few custom tasks is usually - used. This is easy to add att the end of this schema so it can be extended to - include those additional elements as well. - - ================================================================================== ---> -<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" - xmlns="http://relaxng.org/ns/structure/1.0" - datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> - - <start> - <ref name="project"/> - </start> - - <!-- - =========================================================================================================== - Entry point "project" element - =========================================================================================================== - --> - <define name="project"> - <element name="project"> - <interleave> - <attribute name="name"/> - <optional> - <attribute name="basedir"/> - </optional> - <attribute name="default"/> - <optional> - <attribute name="description"/> - </optional> - <optional> - <attribute name="phingVersion"/> - </optional> - </interleave> - - <interleave> - <zeroOrMore> - <ref name="target"/> - </zeroOrMore> - <ref name="coretasks"/> - <ref name="optionaltasks"/> - <ref name="customtasks"/> - <ref name="coretypes"/> - </interleave> - - </element> - </define> - - <!-- - =========================================================================================================== - Macros for all built in tasks (both core and optional) as well as for core complex types - =========================================================================================================== - --> - - <define name="coretypes"> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="filelist"/> - <ref name="path"/> - <ref name="classpath"/> - <ref name="excludes"/> - </choice> - </zeroOrMore> - </define> - - <define name="optionaltasks"> - <zeroOrMore> - <choice> - <ref name="apigen"/> - <ref name="coverage-merger"/> - <ref name="coverage-report"/> - <ref name="coverage-setup"/> - <ref name="dbdeploy"/> - <ref name="exportproperties"/> - <ref name="filterchain"/> - <ref name="ftpdeploy"/> - <ref name="gitinit"/> - <ref name="gitclone"/> - <ref name="gitgc"/> - <ref name="gitbranch"/> - <ref name="gitfetch"/> - <ref name="gitcheckout"/> - <ref name="gitmerge"/> - <ref name="gitpull"/> - <ref name="gitpush"/> - <ref name="gittag"/> - <ref name="gitlog"/> - <ref name="httpget"/> - <ref name="httprequest"/> - <ref name="headfilter"/> - <ref name="iconvfilter"/> - <ref name="ioncubeencoder"/> - <ref name="ioncubelicense"/> - <ref name="jsllint"/> - <ref name="jsmin"/> - <ref name="mail"/> - <ref name="linecontains"/> - <ref name="pdosqlexec"/> - <ref name="pearpkg"/> - <ref name="pearpkg2"/> - <ref name="phpcodesniffer"/> - <ref name="phpdepend"/> - <ref name="phpdoc"/> - <ref name="phpdocumentor"/> - <ref name="phpdocumentorexternal"/> - <ref name="phplint"/> - <ref name="linecontainsregexp"/> - <ref name="phpunit"/> - <ref name="phkpackage"/> - <ref name="phpmd"/> - <ref name="prefixlines"/> - <ref name="phpunitreport"/> - <ref name="rst"/> - <ref name="s3put"/> - <ref name="s3get"/> - <ref name="scp"/> - <ref name="ssh"/> - <ref name="simpletest"/> - <ref name="striplinecomments"/> - <ref name="stripphpcomments"/> - <ref name="symlink"/> - <ref name="svncheckout"/> - <ref name="svnexport"/> - <ref name="svncommit"/> - <ref name="svncopy"/> - <ref name="svninfo"/> - <ref name="svnlastrevision"/> - <ref name="svnlog"/> - <ref name="svnlist"/> - <ref name="svnupdate"/> - <ref name="svnswitch"/> - <ref name="tabtospace"/> - <ref name="tabtospaces"/> - <ref name="tailfilter"/> - <ref name="tar"/> - <ref name="tidyfilter"/> - <ref name="untar"/> - <ref name="unzip"/> - <ref name="version"/> - <ref name="xincludefilter"/> - <ref name="xsltfilter"/> - <ref name="xmllint"/> - <ref name="xmlproperty"/> - <ref name="zendcodeanalyzer"/> - <ref name="zendguardencode"/> - <ref name="zendguardlicense"/> - <ref name="zip"/> - <ref name="contains"/> - <ref name="pharpackage"/> - <ref name="filehash"/> - <ref name="filesize"/> - </choice> - </zeroOrMore> - </define> - - <define name="customtasks"> - <zeroOrMore> - <choice> - <ref name="highlightsrc"/> - </choice> - </zeroOrMore> - </define> - - <define name="coretasks"> - <zeroOrMore> - <choice> - <ref name="adhoc"/> - <ref name="adhoc-task"/> - <ref name="adhoc-type"/> - <ref name="append"/> - <ref name="available"/> - <ref name="phingcall"/> - <ref name="phpeval"/> - <ref name="condition"/> - <ref name="copy"/> - <ref name="cvs"/> - <ref name="cvspass"/> - <ref name="chmod"/> - <ref name="chown"/> - <ref name="delete"/> - <ref name="echo"/> - <ref name="warn"/> - <ref name="exec"/> - <ref name="exit"/> - <ref name="foreach"/> - <ref name="if"/> - <ref name="includepath"/> - <ref name="input"/> - <ref name="mkdir"/> - <ref name="move"/> - <ref name="phing"/> - <ref name="php"/> - <ref name="property"/> - <ref name="propertyprompt"/> - <ref name="reflexive"/> - <ref name="resolvepath"/> - <ref name="taskdef"/> - <ref name="touch"/> - <ref name="tstamp"/> - <ref name="typedef"/> - <ref name="uptodate"/> - <ref name="xslt"/> - <ref name="loadfile"/> - <ref name="import"/> - </choice> - </zeroOrMore> - </define> - - <!-- - =========================================================================================================== - Target element. - =========================================================================================================== - --> - <define name="target"> - <element name="target"> - - <!-- Attributes for target element --> - <interleave> - <attribute name="name"/> - <optional> - <attribute name="depends"/> - </optional> - <optional> - <attribute name="if"/> - </optional> - <optional> - <attribute name="unless"/> - </optional> - <optional> - <attribute name="description"/> - </optional> - </interleave> - <interleave> - <ref name="coretasks"/> - <ref name="coretypes"/> - <ref name="optionaltasks"/> - <ref name="customtasks"/> - </interleave> - </element> - </define> - - <!-- - =========================================================================================================== - Core types - =========================================================================================================== - --> - - <define name="filelist"> - <element name="filelist"> - <interleave> - <attribute name="dir"/> - <choice> - <attribute name="files"/> - <attribute name="listfile"/> - </choice> - </interleave> - </element> - </define> - - <define name="class"> - <element name="class"> - <attribute name="name"/> - </element> - </define> - <define name="method"> - <element name="method"> - <attribute name="name"/> - </element> - </define> - <define name="file"> - <element name="file"> - <attribute name="name"/> - </element> - </define> - - - <define name="excludes"> - <element name="excludes"> - <oneOrMore> - <choice> - <ref name="class"/> - <ref name="method"/> - <ref name="file"/> - </choice> - </oneOrMore> - </element> - </define> - - <define name="fileset"> - <element name="fileset"> - <interleave> - <choice> - <attribute name="refid"> - <data type="IDREF"/> - </attribute> - <group> - <attribute name="dir"/> - <optional> - <choice> - <attribute name="id"> - <data type="ID"/> - </attribute> - <attribute name="refid"> - <data type="IDREF"/> - </attribute> - </choice> - </optional> - <zeroOrMore> - <choice> - <ref name="include"/> - <ref name="exclude"/> - </choice> - </zeroOrMore> - </group> - </choice> - </interleave> - </element> - </define> - - <define name="path"> - <element name="path"> - <optional> - <attribute name="id"> - <data type="ID"/> - </attribute> - <optional> - <attribute name="dir"/> - <attribute name="path"/> - </optional> - </optional> - <choice> - <text/> - <zeroOrMore> - <choice> - <ref name="pathelement"/> - <ref name="fileset"/> - <ref name="dirset"/> - </choice> - </zeroOrMore> - </choice> - </element> - </define> - - <define name="classpath"> - <element name="classpath"> - <attribute name="refid"> - <data type="IDREF"/> - </attribute> - </element> - </define> - - <define name="projdocfileset"> - <element name="projdocfileset"> - <attribute name="dir"/> - <oneOrMore> - <choice> - <ref name="include"/> - <ref name="exclude"/> - </choice> - </oneOrMore> - </element> - </define> - - <define name="dirset"> - <element name="dirset"> - <interleave> - <optional> - <attribute name="includes"/> - </optional> - <optional> - <attribute name="includesfile"/> - </optional> - <optional> - <attribute name="excludes"/> - </optional> - <optional> - <attribute name="excludesfile"/> - </optional> - <optional> - <attribute name="casesensitive" a:defaultValue="yes"> - <choice> - <value>yes</value> - <value>no</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="followsymlinks" a:defaultValue="yes"> - <choice> - <value>yes</value> - <value>no</value> - </choice> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <choice> - <ref name="include"/> - <ref name="exclude"/> - </choice> - </zeroOrMore> - </element> - </define> - - <define name="include"> - <element name="include"> - <attribute name="name"/> - </element> - </define> - - <define name="exclude"> - <element name="exclude"> - <attribute name="name"/> - </element> - </define> - - <define name="pathelement"> - <element name="pathelement"> - <attribute name="dir"/> - </element> - </define> - - <define name="arg"> - <element name="arg"> - <choice> - <attribute name="value"/> - <attribute name="file"/> - <attribute name="path"/> - <attribute name="line"/> - </choice> - </element> - </define> - - - <!-- - =========================================================================================================== - Core Tasks - =========================================================================================================== - --> - - <define name="adhoc"> - <element name="adhoc"> - <text/> - </element> - </define> - - <define name="adhoc-task"> - <element name="adhoc-task"> - <attribute name="name"/> - </element> - </define> - - <define name="adhoc-type"> - <element name="adhoc-type"> - <attribute name="name"/> - </element> - </define> - - <define name="append"> - <element name="append"> - <attribute name="destFile"/> - <optional> - <attribute name="text"/> - </optional> - <interleave> - <optional> - <choice> - <attribute name="file"/> - <oneOrMore> - <interleave> - <optional> - <ref name="fileset"/> - </optional> - <optional> - <ref name="filelist"/> - </optional> - </interleave> - </oneOrMore> - </choice> - </optional> - <optional> - <ref name="filterchain"/> - </optional> - </interleave> - </element> - </define> - - <define name="available"> - <element name="available"> - <interleave> - <attribute name="property"/> - <optional> - <attribute name="value"/> - </optional> - <choice> - <attribute name="file"/> - <attribute name="resource"/> - </choice> - <optional> - <attribute name="type"/> - </optional> - <optional> - <attribute name="filepath"/> - </optional> - <optional> - <attribute name="followSymlinks"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="condition"> - <element name="condition"> - <attribute name="property"/> - <optional> - <attribute name="value"/> - </optional> - <optional> - <choice> - <ref name="or"/> - <ref name="and"/> - </choice> - </optional> - </element> - </define> - - <define name="delete"> - <element name="delete"> - <interleave> - <optional> - <choice> - <attribute name="file"/> - <attribute name="dir"/> - </choice> - </optional> - <optional> - <attribute name="verbose"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="failonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="includeemptydirs"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - - <define name="warn"> - <element name="warn"> - <interleave> - <choice> - <attribute name="msg"/> - <attribute name="message"/> - </choice> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="append"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="level"/> - </optional> - </interleave> - </element> - </define> - - - <define name="echo"> - <element name="echo"> - <interleave> - <choice> - <attribute name="msg"/> - <attribute name="message"/> - <text/> - <ref name="fileset"/> - </choice> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="append"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="level"/> - </optional> - </interleave> - </element> - </define> - - <define name="exec"> - <element name="exec"> - <interleave> - <oneOrMore> - <choice> - <attribute name="command"/> - <attribute name="executable"/> - </choice> - </oneOrMore> - <optional> - <attribute name="passthru"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="checkreturn"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="dir"/> - </optional> - <optional> - <attribute name="os"/> - </optional> - <optional> - <attribute name="escape"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="spawn"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="returnProperty"/> - </optional> - <optional> - <attribute name="outputProperty"/> - </optional> - <optional> - <attribute name="logoutput"/> - </optional> - <optional> - <attribute name="output"/> - </optional> - <optional> - <attribute name="error"/> - </optional> - <optional> - <attribute name="level"> - <choice> - <value>error</value> - <value>warning</value> - <value>info</value> - <value>verbose</value> - <value>debug</value> - </choice> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="arg"/> - </zeroOrMore> - </element> - </define> - - <define name="copy"> - <element name="copy"> - <interleave> - <choice> - <attribute name="file"/> - <oneOrMore> - <choice> - <ref name="fileset"/> - <ref name="filelist"/> - </choice> - </oneOrMore> - </choice> - <choice> - <attribute name="tofile"/> - <attribute name="todir"/> - </choice> - <optional> - <attribute name="overwrite"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <choice> - <attribute name="tstamp"> - <data type="boolean"/> - </attribute> - <attribute name="preservelastmodified"> - <data type="boolean"/> - </attribute> - </choice> - </optional> - <optional> - <attribute name="includeemptydirs"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="mode"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <choice> - <ref name="mapper"/> - <ref name="filterchain"/> - </choice> - </zeroOrMore> - </element> - </define> - - <define name="argument"> - <element name="argument"> - <choice> - <attribute name="value"/> - <attribute name="line"/> - </choice> - </element> - </define> - - <define name="commandline"> - <element name="commandline"> - <attribute name="executable"/> - <oneOrMore> - <ref name="argument"/> - </oneOrMore> - </element> - </define> - - <define name="cvs"> - <element name="cvs"> - <interleave> - <attribute name="dest"/> - <attribute name="modules"/> - <optional> - <attribute name="cvsRoot"/> - </optional> - <optional> - <attribute name="cvsRsh"/> - </optional> - <optional> - <attribute name="port"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="passfile"/> - </optional> - <optional> - <attribute name="tag"/> - </optional> - <optional> - <attribute name="date"/> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="noexec"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="setfailonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="compression"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="compressionlevel"> - <data type="unsignedByte"/> - </attribute> - </optional> - <optional> - <attribute name="output"/> - </optional> - <optional> - <attribute name="error"/> - </optional> - <optional> - <attribute name="command"/> - </optional> - </interleave> - </element> - </define> - - <define name="cvspass"> - <element name="cvspass"> - <interleave> - <attribute name="password"/> - <attribute name="cvsRoot"/> - <optional> - <attribute name="passFile"/> - </optional> - </interleave> - </element> - </define> - - <define name="exit"> - <element name="exit"> - <interleave> - <optional> - <choice> - <attribute name="message"/> - <attribute name="msg"/> - </choice> - </optional> - <optional> - <attribute name="if"/> - </optional> - <optional> - <attribute name="unless"/> - </optional> - <text/> - </interleave> - </element> - </define> - - <define name="foreach"> - <element name="foreach"> - <interleave> - <attribute name="target"/> - <attribute name="param"/> - <optional> - <attribute name="list"/> - </optional> - <optional> - <attribute name="delimiter"/> - </optional> - </interleave> - <interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - <zeroOrMore> - <ref name="mapper"/> - </zeroOrMore> - </interleave> - </element> - </define> - - <define name="if"> - <element name="if"> - <choice> - <ref name="not"/> - <ref name="equals"/> - <ref name="or"/> - <ref name="and"/> - <ref name="isfalse"/> - <ref name="istrue"/> - <ref name="isset"/> - <ref name="contains_cond"/> - <ref name="referenceexists"/> - </choice> - <ref name="then"/> - <zeroOrMore> - <ref name="elseif"/> - </zeroOrMore> - <optional> - <ref name="else"/> - </optional> - </element> - </define> - - <define name="not"> - <element name="not"> - <choice> - <ref name="equals"/> - <ref name="or"/> - <ref name="and"/> - <ref name="isfalse"/> - <ref name="istrue"/> - <ref name="isset"/> - <ref name="contains_cond"/> - <ref name="referenceexists"/> - </choice> - </element> - </define> - - <define name="istrue"> - <element name="istrue"> - <attribute name="value"/> - </element> - </define> - - <define name="isset"> - <element name="isset"> - <attribute name="property"/> - </element> - </define> - - <define name="isfalse"> - <element name="isfalse"> - <attribute name="value"/> - </element> - </define> - - <define name="referenceexists"> - <element name="referenceexists"> - <attribute name="ref"/> - </element> - </define> - - <define name="contains_cond"> - <element name="contains"> - <interleave> - <attribute name="string"/> - <attribute name="substring"/> - <optional> - <attribute name="casesensitive"/> - </optional> - </interleave> - </element> - </define> - - <define name="equals"> - <element name="equals"> - <interleave> - <attribute name="arg1"/> - <attribute name="arg2"/> - <optional> - <attribute name="casesensitive"/> - </optional> - <optional> - <attribute name="trim"/> - </optional> - </interleave> - </element> - </define> - - <define name="then"> - <element name="then"> - <interleave> - <ref name="coretasks"/> - <ref name="optionaltasks"/> - <ref name="customtasks"/> - <ref name="coretypes"/> - </interleave> - </element> - </define> - - <define name="elseif"> - <choice> - <ref name="equals"/> - <ref name="or"/> - <ref name="and"/> - <ref name="isfalse"/> - <ref name="istrue"/> - <ref name="isset"/> - <ref name="contains_cond"/> - <ref name="referenceexists"/> - </choice> - <interleave> - <ref name="coretasks"/> - <ref name="optionaltasks"/> - <ref name="customtasks"/> - <ref name="coretypes"/> - </interleave> - </define> - - <define name="else"> - <element name="else"> - <interleave> - <ref name="coretasks"/> - <ref name="optionaltasks"/> - <ref name="customtasks"/> - <ref name="coretypes"/> - </interleave> - </element> - </define> - - <define name="includepath"> - <element name="includepath"> - <choice> - <attribute name="classpath"/> - <attribute name="classpathref"/> - </choice> - </element> - </define> - - <define name="or"> - <element name="or"> - <oneOrMore> - <interleave> - <ref name="property"/> - <ref name="and"/> - <ref name="isfalse"/> - <ref name="istrue"/> - <ref name="isset"/> - <ref name="contains_cond"/> - <ref name="referenceexists"/> - </interleave> - </oneOrMore> - </element> - </define> - - <define name="and"> - <element name="and"> - <oneOrMore> - <interleave> - <ref name="property"/> - <ref name="or"/> - <ref name="isfalse"/> - <ref name="istrue"/> - <ref name="isset"/> - <ref name="contains_cond"/> - <ref name="referenceexists"/> - </interleave> - </oneOrMore> - </element> - </define> - - <define name="input"> - <element name="input"> - <interleave> - <attribute name="propertyName"/> - <attribute name="message"/> - <optional> - <attribute name="defaultValue"/> - </optional> - <optional> - <attribute name="promptChar"/> - </optional> - <optional> - <attribute name="validArgs"/> - </optional> - </interleave> - </element> - </define> - - <define name="mkdir"> - <element name="mkdir"> - <attribute name="dir"/> - <optional> - <attribute name="mode"> - <data type="int"/> - </attribute> - </optional> - </element> - </define> - - <define name="move"> - <element name="move"> - <interleave> - <choice> - <attribute name="file"/> - <oneOrMore> - <choice> - <ref name="fileset"/> - <ref name="filelist"/> - </choice> - </oneOrMore> - </choice> - <choice> - <attribute name="tofile"/> - <attribute name="todir"/> - </choice> - <optional> - <attribute name="overwrite"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <choice> - <attribute name="tstamp"> - <data type="boolean"/> - </attribute> - <attribute name="preservelastmodified"> - <data type="boolean"/> - </attribute> - </choice> - </optional> - <optional> - <attribute name="includeemptydirs"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="mode"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <choice> - <ref name="mapper"/> - <ref name="filterchain"/> - </choice> - </zeroOrMore> - </element> - </define> - - <define name="phing"> - <element name="phing"> - <interleave> - <attribute name="phingfile"/> - <optional> - <attribute name="inheritAll"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="inheritRefs"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="dir"/> - </optional> - <optional> - <ref name="property"/> - </optional> - <optional> - <attribute name="target"/> - </optional> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <define name="phingcall"> - <element name="phingcall"> - <attribute name="target"/> - <zeroOrMore> - <choice> - <ref name="property"/> - <ref name="param"/> - </choice> - </zeroOrMore> - </element> - </define> - - <define name="phpeval"> - <element name="phpeval"> - <interleave> - <choice> - <attribute name="function"/> - <attribute name="expression"/> - </choice> - <optional> - <attribute name="class"/> - </optional> - <optional> - <attribute name="returnProperty"/> - </optional> - <optional> - <attribute name="level"> - <choice> - <value>error</value> - <value>warning</value> - <value>info</value> - <value>verbose</value> - <value>debug</value> - </choice> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="php"> - <element name="php"> - <interleave> - <choice> - <attribute name="function"/> - <attribute name="expression"/> - </choice> - <optional> - <attribute name="class"/> - </optional> - <optional> - <attribute name="returnProperty"/> - </optional> - </interleave> - <zeroOrMore> - <ref name="param"/> - </zeroOrMore> - </element> - </define> - - <define name="property"> - <element name="property"> - <interleave> - <choice> - <group> - <attribute name="name"/> - <attribute name="value"/> - </group> - <attribute name="file"/> - <optional> - <attribute name="environment"/> - </optional> - </choice> - <optional> - <attribute name="override"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="prefix"/> - </optional> - <optional> - <attribute name="refid"/> - </optional> - <optional> - <attribute name="fallback"/> - </optional> - </interleave> - </element> - </define> - - <define name="propertyprompt"> - <element name="propertyprompt"> - <interleave> - <attribute name="propertyName"/> - <attribute name="promptText"/> - <optional> - <attribute name="promptCharacter"/> - </optional> - <optional> - <attribute name="defaultValue"/> - </optional> - <optional> - <attribute name="useExistingValue"/> - </optional> - </interleave> - </element> - </define> - - <define name="reflexive"> - <element name="reflexive"> - <choice> - <attribute name="file"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <zeroOrMore> - <ref name="filterchain"/> - </zeroOrMore> - </element> - </define> - - <define name="resolvepath"> - <element name="resolvepath"> - <interleave> - <attribute name="file"/> - <attribute name="propertyName"/> - <optional> - <attribute name="dir"/> - </optional> - </interleave> - </element> - </define> - - <define name="symlink"> - <element name="symlink"> - <choice> - <attribute name="target"/> - <ref name="fileset"/> - </choice> - <attribute name="link"/> - <optional> - <attribute name="overwrite"> - <data type="boolean"/> - </attribute> - </optional> - </element> - </define> - - <define name="taskdef"> - <element name="taskdef"> - <interleave> - <choice> - <group> - <attribute name="classname"/> - <attribute name="name"/> - </group> - <attribute name="file"/> - </choice> - <optional> - <attribute name="classpath"/> - </optional> - <optional> - <attribute name="classpathref"/> - </optional> - </interleave> - </element> - </define> - - <define name="touch"> - <element name="touch"> - <interleave> - <choice> - <attribute name="file"/> - <ref name="fileset"/> - </choice> - <optional> - <attribute name="datetime"/> - </optional> - <optional> - <attribute name="millis"> - <data type="int"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="tstamp"> - <element name="tstamp"> - <interleave> - <optional> - <attribute name="prefix"/> - </optional> - <optional> - <element name="format"> - <interleave> - <attribute name="property"/> - <attribute name="pattern"/> - <optional> - <attribute name="locale"/> - </optional> - </interleave> - </element> - </optional> - </interleave> - </element> - </define> - - <define name="typedef"> - <element name="typedef"> - <interleave> - <attribute name="classname"/> - <attribute name="name"/> - <optional> - <attribute name="classpath"/> - </optional> - <optional> - <attribute name="classpathref"/> - </optional> - </interleave> - <zeroOrMore> - <ref name="classpath"/> - </zeroOrMore> - </element> - </define> - - <define name="uptodate"> - <element name="uptodate"> - <interleave> - <attribute name="property"/> - <optional> - <attribute name="value"/> - </optional> - <choice> - <attribute name="srcfile"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <choice> - <attribute name="targetfile"/> - <oneOrMore> - <ref name="mapper"/> - </oneOrMore> - </choice> - </interleave> - </element> - </define> - - <define name="xslt"> - <element name="xslt"> - <interleave> - <attribute name="style"/> - <choice> - <attribute name="file"/> - <oneOrMore> - <choice> - <ref name="fileset"/> - <ref name="filelist"/> - </choice> - </oneOrMore> - </choice> - <choice> - <attribute name="tofile"/> - <attribute name="todir"/> - </choice> - <optional> - <attribute name="overwrite"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <choice> - <attribute name="tstamp"> - <data type="boolean"/> - </attribute> - <attribute name="preservelastmodified"> - <data type="boolean"/> - </attribute> - </choice> - </optional> - <optional> - <attribute name="includeemptydirs"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="mode"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <choice> - <ref name="mapper"/> - <ref name="filterchain"/> - <ref name="param"/> - </choice> - </zeroOrMore> - </element> - </define> - - <define name="chmod"> - <element name="chmod"> - <interleave> - <choice> - <attribute name="file"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <attribute name="mode"/> - <optional> - <attribute name="failonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="verbose"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="chown"> - <element name="chown"> - <interleave> - <choice> - <attribute name="file"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <attribute name="user"/> - <optional> - <attribute name="failonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="verbose"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="loadfile"> - <element name="loadfile"> - <interleave> - <attribute name="property"/> - <attribute name="file"/> - </interleave> - <zeroOrMore> - <ref name="filterchain"/> - </zeroOrMore> - </element> - </define> - - <define name="import"> - <element name="import"> - <attribute name="file"/> - <optional> - <attribute name="optional"> - <data type="boolean"/> - </attribute> - </optional> - </element> - </define> - - - <!-- - =========================================================================================================== - Optional Tasks - =========================================================================================================== - --> - - <!-- - ========================================= - ApiGenTask - ========================================= - --> - - <define name="apigen"> - <element name="apigen"> - <interleave> - <optional> - <attribute name="executable"/> - </optional> - <optional> - <attribute name="config"/> - </optional> - <optional> - <attribute name="source"/> - </optional> - <optional> - <attribute name="destination"/> - </optional> - <optional> - <attribute name="extensions"/> - </optional> - <optional> - <attribute name="exclude"/> - </optional> - <optional> - <attribute name="skipdocpath"/> - </optional> - <optional> - <attribute name="skipdocprefix"/> - </optional> - <optional> - <attribute name="charset"/> - </optional> - <optional> - <attribute name="main"/> - </optional> - <optional> - <attribute name="title"/> - </optional> - <optional> - <attribute name="baseurl"/> - </optional> - <optional> - <attribute name="googlecseid"/> - </optional> - <optional> - <attribute name="googlecselabel"/> - </optional> - <optional> - <attribute name="googleanalytics"/> - </optional> - <optional> - <attribute name="templateconfig"/> - </optional> - <optional> - <attribute name="allowedhtml"/> - </optional> - <optional> - <attribute name="groups"/> - </optional> - <optional> - <attribute name="autocomplete"/> - </optional> - <optional> - <attribute name="accesslevels"/> - </optional> - <optional> - <attribute name="internal"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="php"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="tree"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="deprecated"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="todo"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="sourcecode"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="download"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="report"/> - </optional> - <optional> - <attribute name="wipeout"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="updatecheck"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="debug"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - CoverageMergerTask - ========================================= - --> - - <define name="coverage-merger"> - <element name="coverage-merger"> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </element> - </define> - - <!-- - ========================================= - CoverageReportTask - ========================================= - --> - <define name="coverage-report"> - <element name="coverage-report"> - <attribute name="outfile"/> - <optional> - <attribute name="classpath"/> - </optional> - <optional> - <attribute name="geshipath"/> - </optional> - <optional> - <attribute name="geshilanguagespath"/> - </optional> - <ref name="report"/> - </element> - </define> - - <define name="report"> - <element name="report"> - <attribute name="todir"/> - <attribute name="styledir"/> - <optional> - <attribute name="title"/> - </optional> - <optional> - <attribute name="usesorttable"/> - </optional> - </element> - </define> - - <!-- - ========================================= - CoverageSetupTask - ========================================= - --> - <define name="coverage-setup"> - <element name="coverage-setup"> - <interleave> - <attribute name="database"/> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="filelist"/> - <ref name="classpath"/> - </choice> - </zeroOrMore> - </interleave> - </element> - </define> - - <!-- - ========================================= - CoverageThresholdTask - ========================================= - --> - <define name="coverage-threshold"> - <element name="coverage-threshold"> - <interleave> - <optional> - <attribute name="database"> - <data type="string"/> - </attribute> - </optional> - <optional> - <attribute name="perProject"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="perClass"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="perMethod"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="verbose"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="classpath"/> - <ref name="excludes"/> - </zeroOrMore> - </element> - </define> - - - <!-- - ========================================= - DbDeployTask - ========================================= - --> - - <define name="dbdeploy"> - <element name="dbdeploy"> - <interleave> - <attribute name="url"/> - <attribute name="dir"/> - <optional> - <attribute name="userid"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - - <optional> - <attribute name="outputfile"/> - </optional> - - <optional> - <attribute name="undooutputfile"/> - </optional> - - <optional> - <attribute name="deltaset"/> - </optional> - - <optional> - <attribute name="lastchangetoapply"> - <data type="int"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - ExportPropertiesTask - ========================================= - --> - - <define name="exportproperties"> - <element name="exportproperties"> - <interleave> - <attribute name="targetfile"/> - <optional> - <attribute name="disallowedpropertyprefixes"/> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - FileHashTask - ========================================= - --> - <define name="filehash"> - <element name="filehash"> - <interleave> - <attribute name="file"/> - <optional> - <attribute name="hashtype"> - <choice> - <value>0</value> - <value>1</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="propertyname"/> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - FileSizeTask - ========================================= - --> - <define name="filesize"> - <element name="filesize"> - <interleave> - <attribute name="file"/> - <optional> - <attribute name="propertyname"/> - </optional> - </interleave> - </element> - </define> - - - <!-- - ========================================= - git Manipulation tasks - ========================================= - --> - - <define name="gitinit"> - <element name="gitinit"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="bare"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="gitclone"> - <element name="gitclone"> - <interleave> - <attribute name="repository"/> - <attribute name="targetpath"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="bare"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="gitgc"> - <element name="gitgc"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="aggresive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="auto"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="noprune"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="prune"/> - </optional> - </interleave> - </element> - </define> - - <define name="gitbranch"> - <element name="gitbranch"> - <interleave> - <attribute name="repository"/> - <attribute name="branchname"/> - <optional> - <attribute name="newbranch"/> - </optional> - <optional> - <attribute name="startpoint"/> - </optional> - <optional> - <attribute name="setupstream"/> - </optional> - <optional> - <attribute name="track"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="notrack"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="move"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="forcemove"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="delete"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="forcedelete"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="gitpath"/> - </optional> - </interleave> - </element> - </define> - - <define name="gitfetch"> - <element name="gitfetch"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="source"/> - </optional> - <optional> - <attribute name="refspec"/> - </optional> - <optional> - <attribute name="group"/> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="all"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="keep"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="prune"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="tags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="notags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - - </element> - </define> - - <define name="gitcheckout"> - <element name="gitcheckout"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="forcecreate"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="create"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="merge"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="track"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="notrack"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - - </element> - </define> - - <define name="gitmerge"> - <element name="gitmerge"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="remote"/> - </optional> - <optional> - <attribute name="message"/> - </optional> - <optional> - <attribute name="strategy"/> - </optional> - <optional> - <attribute name="strategyoption"/> - </optional> - <optional> - <attribute name="commit"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="nocommit"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="fastforwardcommit"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <define name="gitpull"> - <element name="gitpull"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="all"/> - </optional> - <optional> - <attribute name="source"/> - </optional> - <optional> - <attribute name="refspec"/> - </optional> - <optional> - <attribute name="strategy"/> - </optional> - <optional> - <attribute name="strategyoption"/> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="append"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="keepfiles"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="notags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="tags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="norebase"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="rebase"> - <data type="boolean"/> - </attribute> - </optional> - - </interleave> - - </element> - </define> - - <define name="gitpush"> - <element name="gitpush"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="all"/> - </optional> - <optional> - <attribute name="destination"/> - </optional> - <optional> - <attribute name="refspec"/> - </optional> - <optional> - <attribute name="mirror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="delete"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="tags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - - </element> - </define> - - <define name="gittag"> - <element name="gittag"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="message"/> - </optional> - <optional> - <attribute name="name"/> - </optional> - <optional> - <attribute name="commit"/> - </optional> - <optional> - <attribute name="object"/> - </optional> - <optional> - <attribute name="pattern"/> - </optional> - <optional> - <attribute name="outputproperty"/> - </optional> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="num"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="contains"/> - </optional> - <optional> - <attribute name="keysign"/> - </optional> - <optional> - <attribute name="verify"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="sign"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="list"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="delete"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="annotate"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - - </element> - </define> - - <define name="gitlog"> - <element name="gitlog"> - <interleave> - <attribute name="repository"/> - <optional> - <attribute name="gitpath"/> - </optional> - <optional> - <attribute name="outputproperty"/> - </optional> - <optional> - <attribute name="paths"/> - </optional> - <optional> - <attribute name="format"/> - </optional> - <optional> - <attribute name="date"/> - </optional> - <optional> - <attribute name="since"/> - </optional> - <optional> - <attribute name="until"/> - </optional> - <optional> - <attribute name="stat"/> - </optional> - <optional> - <attribute name="namestatus"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="maxcount"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="nomerges"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - Http manipulation - ========================================= - --> - <define name="httpget"> - <element name="httpget"> - <interleave> - <attribute name="url"/> - <attribute name="dir"/> - <optional> - <attribute name="filename"/> - </optional> - </interleave> - </element> - </define> - - <define name="header"> - <element name="header"> - <attribute name="name"/> - <attribute name="val"/> - </element> - </define> - - <define name="httprequest"> - <element name="httprequest"> - <interleave> - <attribute name="url"/> - <optional> - <attribute name="responseregex"/> - </optional> - <optional> - <attribute name="authuser"/> - </optional> - <optional> - <attribute name="authpassword"/> - </optional> - <optional> - <attribute name="authschema"/> - </optional> - <optional> - <attribute name="verbose"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="observerevents"/> - </optional> - <zeroOrMore> - <ref name="config"/> - </zeroOrMore> - <zeroOrMore> - <ref name="header"/> - </zeroOrMore> - </interleave> - </element> - </define> - - <!-- - ========================================= - IoncubeEncoderTask - ========================================= - --> - <define name="ioncubeencoder"> - <element name="ioncubeencoder"> - <interleave> - <attribute name="ignore"/> - <attribute name="fromdir"/> - <attribute name="todir"/> - <optional> - <attribute name="allowedserver"/> - </optional> - <optional> - <attribute name="binary"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="copy"/> - </optional> - <optional> - <attribute name="encode"/> - </optional> - <optional> - <attribute name="encrypt"/> - </optional> - <optional> - <attribute name="expirein"/> - </optional> - <optional> - <attribute name="expireon"/> - </optional> - <optional> - <attribute name="ioncubepath"/> - </optional> - <optional> - <attribute name="keep"/> - </optional> - <optional> - <attribute name="licensepath"/> - </optional> - <optional> - <attribute name="nodocomments"/> - </optional> - <optional> - <attribute name="obfuscation-key"/> - </optional> - <optional> - <attribute name="obfuscate"/> - </optional> - <optional> - <attribute name="optimize"/> - </optional> - <optional> - <attribute name="passphrase"/> - </optional> - <optional> - <attribute name="phpversion"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="targetoption"/> - </optional> - <optional> - <attribute name="withoutruntimeloadersupport"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="noshortopentags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="callbackfile"/> - </optional> - <optional> - <attribute name="obfuscationexclusionfile"/> - </optional> - <optional> - <attribute name="ignoredeprecatedwarnings"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignorestrictwarnings"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="allowencodingintosource"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="messageifnoloader"/> - </optional> - <optional> - <attribute name="actionifnoloader"/> - </optional> - <optional> - <attribute name="showcommandline"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <optional> - <ref name="comment"/> - </optional> - </element> - </define> - - - <!-- - ========================================= - IoncubeLicenseTask - ========================================= - --> - <define name="ioncubelicense"> - <element name="ioncubelicense"> - <interleave> - <optional> - <attribute name="licensepath"/> - </optional> - <optional> - <attribute name="ioncubepath"/> - </optional> - <optional> - <attribute name="passphrase"/> - </optional> - <optional> - <attribute name="allowedserver"/> - </optional> - <optional> - <attribute name="expirein"/> - </optional> - <optional> - <attribute name="expireon"/> - </optional> - </interleave> - <optional> - <ref name="comment"/> - </optional> - </element> - </define> - - <!-- - ========================================= - JslLintTask - ========================================= - --> - <define name="jsllint"> - <element name="jsllint"> - <interleave> - <choice> - <attribute name="executable"/> - </choice> - <choice> - <attribute name="file"/> - <ref name="fileset"/> - </choice> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="showwarnings"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="cachefile"/> - </optional> - <optional> - <attribute name="conffile"/> - </optional> - <optional> - <attribute name="tofile"/> - </optional> - </interleave> - <ref name="fileset"/> - </element> - </define> - - <!-- - ========================================= - JsMinTask - ========================================= - --> - <define name="jsmin"> - <element name="jsmin"> - <interleave> - <attribute name="targetdir"/> - <optional> - <attribute name="suffix"/> - </optional> - <optional> - <attribute name="failonerror"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </element> - </define> - - <!-- - ========================================= - MailTask - ========================================= - --> - - <define name="mail"> - <element name="mail"> - <interleave> - <attribute name="from"/> - <attribute name="tolist"/> - <optional> - <attribute name="message"/> - </optional> - <optional> - <attribute name="subject"/> - </optional> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </interleave> - </element> - </define> - - <!-- - ========================================= - PatchTask - ========================================= - --> - - <define name="patch"> - <element name="patch"> - <interleave> - <attribute name="patchfile"/> - <optional> - <attribute name="originalfile"/> - </optional> - <optional> - <attribute name="destfile"/> - </optional> - <optional> - <attribute name="backups"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="reverse"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignorewhitespace"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="strip"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="dir"/> - </optional> - </interleave> - </element> - </define> - - - - <!-- - ========================================= - PDOSQLExecTask - ========================================= - --> - <define name="pdosqlexec"> - <element name="pdosqlexec"> - <interleave> - <attribute name="url"/> - <optional> - <attribute name="userid"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="encoding"/> - </optional> - <optional> - <attribute name="src"/> - </optional> - <optional> - <attribute name="onerror"/> - </optional> - <optional> - <attribute name="delimiter"/> - </optional> - <optional> - <attribute name="delimitertype"/> - </optional> - <optional> - <attribute name="autocommit"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - <zeroOrMore> - <ref name="transaction"/> - </zeroOrMore> - <zeroOrMore> - <ref name="formatter"/> - </zeroOrMore> - </element> - </define> - - <define name="transaction"> - <element name="transaction"> - <optional> - <attribute name="tsrcfile"/> - </optional> - </element> - </define> - - <define name="formatter"> - <element name="formatter"> - <interleave> - <choice> - <attribute name="type"/> - <attribute name="classname"/> - </choice> - <optional> - <attribute name="usefile"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="outfile"/> - </optional> - <optional> - <attribute name="output"/> - </optional> - <optional> - <attribute name="showheaders"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="coldelim"/> - </optional> - <optional> - <attribute name="rowdelim"/> - </optional> - <optional> - <attribute name="encoding"/> - </optional> - <optional> - <attribute name="formatoutput"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="todir"/> - </optional> - </interleave> - <zeroOrMore> - <ref name="param"/> - </zeroOrMore> - </element> - </define> - - - <!-- - ========================================= - PearPackageTask - ========================================= - --> - <define name="pearpkg"> - <element name="pearpkg"> - <interleave> - <attribute name="name"/> - <attribute name="dir"/> - <optional> - <attribute name="destFile"/> - </optional> - </interleave> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="mapping"/> - <ref name="option"/> - </choice> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - PearPackage2Task - ========================================= - --> - <define name="pearpkg2"> - <element name="pearpkg2"> - <interleave> - <attribute name="name"/> - <attribute name="dir"/> - </interleave> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="mapping"/> - <ref name="option"/> - </choice> - </zeroOrMore> - </element> - </define> - - <define name="option"> - <element name="option"> - <interleave> - <attribute name="name"/> - <optional> - <attribute name="value"/> - </optional> - </interleave> - <text/> - </element> - </define> - - <define name="mapping"> - <element name="mapping"> - <optional> - <attribute name="name"/> - </optional> - <oneOrMore> - <ref name="element"/> - </oneOrMore> - </element> - </define> - - <define name="element"> - <element name="element"> - <interleave> - <optional> - <choice> - <attribute name="key"/> - <attribute name="name"/> - </choice> - </optional> - <optional> - <attribute name="value"/> - </optional> - </interleave> - <zeroOrMore> - <ref name="element"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - PharPackageTask - ========================================= - --> - <define name="pharpackage"> - <element name="pharpackage"> - <interleave> - <attribute name="basedir"/> - <attribute name="destfile"/> - <optional> - <attribute name="compression"/> - </optional> - <optional> - <attribute name="webstub"/> - </optional> - <optional> - <attribute name="clistub"/> - </optional> - <optional> - <attribute name="stub"/> - </optional> - <optional> - <attribute name="alias"/> - </optional> - <optional> - <attribute name="signature"/> - </optional> - </interleave> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - <optional> - <ref name="metadata"/> - </optional> - </element> - </define> - - <define name="metadata"> - <element name="metadata"> - <oneOrMore> - <ref name="element"/> - </oneOrMore> - </element> - </define> - - <!-- - ========================================= - PhkPackageTask - ========================================= - --> - <define name="phkpackage"> - <element name="phkpackage"> - <interleave> - <attribute name="phkcreatorpath"/> - <attribute name="inputdirectory"/> - <attribute name="outputfile"/> - <optional> - <attribute name="compress"/> - </optional> - <optional> - <attribute name="strip"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="name"/> - </optional> - <optional> - <attribute name="webrunscript"/> - </optional> - <optional> - <attribute name="crccheck"/> - </optional> - <optional> - <ref name="webaccess"/> - </optional> - </interleave> - </element> - </define> - - <define name="webaccess"> - <element name="webaccess"> - <oneOrMore> - <ref name="path"/> - </oneOrMore> - </element> - </define> - - <!-- - ========================================= - PhpCodeSnifferTask - ========================================= - --> - <define name="phpcodesniffer"> - <element name="phpcodesniffer"> - <interleave> - <optional> - <attribute name="standard"/> - </optional> - <optional> - <attribute name="format"/> - </optional> - <optional> - <attribute name="showSniffs"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="showWarnings"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="showSources"> - <data type="boolean"/> - </attribute> - </optional> - <choice> - <attribute name="file"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <optional> - <attribute name="sniffs"/> - </optional> - <optional> - <attribute name="verbosity"/> - </optional> - <optional> - <attribute name="tabwidth"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="reportwidth"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="docgenerator"/> - </optional> - <optional> - <attribute name="docfile"/> - </optional> - <optional> - <attribute name="allowedFileExtensions"/> - </optional> - <optional> - <attribute name="ignorePatterns"/> - </optional> - <optional> - <attribute name="nosubdirectories"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonwarning"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="skipversioncheck"> - <data type="boolean"/> - </attribute> - </optional> - <zeroOrMore> - <ref name="config"/> - <ref name="formatter"/> - </zeroOrMore> - </interleave> - </element> - </define> - - <define name="config"> - <element name="config"> - <attribute name="name"/> - <attribute name="value"/> - </element> - </define> - - - <!-- - ========================================= - PhpDocumentorTask - ========================================= - --> - <define name="phpdocumentor"> - <element name="phpdocumentor"> - <interleave> - <optional> - <attribute name="title"/> - </optional> - <choice> - <attribute name="destdir"/> - <attribute name="target"/> - </choice> - <optional> - <attribute name="output"/> - </optional> - <optional> - <attribute name="sourcecode"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="examplesdir"/> - </optional> - <optional> - <attribute name="parseprivate"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="javadocdesc"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="packageoutput"/> - </optional> - <optional> - <attribute name="ignoretags"/> - </optional> - <optional> - <attribute name="defaultpackagename"/> - </optional> - <optional> - <attribute name="defaultcategoryname"/> - </optional> - <optional> - <attribute name="pear"/> - </optional> - <optional> - <attribute name="templatebase"/> - </optional> - <optional> - <attribute name="undocumentedelements"/> - </optional> - <optional> - <attribute name="customtags"/> - </optional> - </interleave> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="projdocfileset"/> - </choice> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - PHPMDTask - ========================================= - --> - <define name="phpmd"> - <element name="phpmd"> - <interleave> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="ruleset"/> - </optional> - <optional> - <attribute name="minimumpriority"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="allowedfileextensions"/> - </optional> - <optional> - <attribute name="ignorepatterns"/> - </optional> - <optional> - <attribute name="format"/> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - PhpDependTask - ========================================= - --> - <define name="phpdepend"> - <element name="phpdepend"> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="configfile"/> - </optional> - <optional> - <attribute name="allowedfileextensions"/> - </optional> - <optional> - <attribute name="excludedirectories"/> - </optional> - <optional> - <attribute name="excludepackages"/> - </optional> - <optional> - <attribute name="withoutannotations"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="superbaddocumentation"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="debug"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - </element> - </define> - - <!-- - ========================================= - PhpDocumentorTask - ========================================= - --> - <define name="phpdoc"> - <element name="phpdoc"> - <interleave> - <optional> - <attribute name="title"/> - </optional> - <choice> - <attribute name="destdir"/> - <attribute name="target"/> - </choice> - <optional> - <attribute name="output"/> - </optional> - <optional> - <attribute name="sourcecode"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="examplesdir"/> - </optional> - <optional> - <attribute name="parseprivate"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="javadocdesc"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="packageoutput"/> - </optional> - <optional> - <attribute name="ignoretags"/> - </optional> - <optional> - <attribute name="defaultpackagename"/> - </optional> - <optional> - <attribute name="defaultcategoryname"/> - </optional> - <optional> - <attribute name="pear"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="templatebase"/> - </optional> - <optional> - <attribute name="undocumentedelements"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="customtags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignore"/> - </optional> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="projdocfileset"/> - </choice> - </zeroOrMore> - </interleave> - </element> - </define> - - - <!-- - ========================================= - PhpDocumentorExternalTask - ========================================= - --> - <define name="phpdocumentorexternal"> - <element name="phpdocumentorexternal"> - <interleave> - <optional> - <attribute name="title"/> - </optional> - <choice> - <attribute name="destdir"/> - <attribute name="target"/> - </choice> - <optional> - <attribute name="output"/> - </optional> - <optional> - <attribute name="sourcecode"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="examplesdir"/> - </optional> - <optional> - <attribute name="parseprivate"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="javadocdesc"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="quiet"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="packageoutput"/> - </optional> - <optional> - <attribute name="ignoretags"/> - </optional> - <optional> - <attribute name="defaultpackagename"/> - </optional> - <optional> - <attribute name="defaultcategoryname"/> - </optional> - <optional> - <attribute name="pear"/> - </optional> - <optional> - <attribute name="templatebase"/> - </optional> - <optional> - <attribute name="undocumentedelements"/> - </optional> - <optional> - <attribute name="customtags"/> - </optional> - <optional> - <attribute name="programpath"/> - </optional> - <optional> - <attribute name="ignore"/> - </optional> - <choice> - <attribute name="sourcepath"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - </interleave> - </element> - </define> - - <!-- - ========================================= - PhpLintTask - ========================================= - --> - <define name="phplint"> - <element name="phplint"> - <choice> - <attribute name="file"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="errorproperty"/> - </optional> - <optional> - <attribute name="interpretator"/> - </optional> - <optional> - <attribute name="cachefile"/> - </optional> - <optional> - <attribute name="level"> - <choice> - <value>error</value> - <value>warning</value> - <value>info</value> - <value>verbose</value> - <value>debug</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="tofile"/> - </optional> - <optional> - <attribute name="deprecatedaserror"> - <data type="boolean"/> - </attribute> - </optional> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - PHPUnitTask - ========================================= - --> - <define name="phpunit"> - <element name="phpunit"> - <interleave> - <optional> - <attribute name="printsummary"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="bootstrap"/> - </optional> - <optional> - <attribute name="codecoverage"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonincomplete"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonskipped"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="failureproperty"/> - </optional> - <optional> - <attribute name="errorproperty"/> - </optional> - <optional> - <attribute name="incompleteproperty"/> - </optional> - <optional> - <attribute name="skippedproperty"/> - </optional> - <optional> - <attribute name="usecustomerrorhandler"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="processisolation"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="formatter"/> - </zeroOrMore> - <optional> - <ref name="batchtest"/> - </optional> - </element> - </define> - - <define name="batchtest"> - <element name="batchtest"> - <interleave> - <optional> - <attribute name="exclude"/> - </optional> - <optional> - <attribute name="classpath"/> - </optional> - </interleave> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </element> - </define> - - <!-- - ========================================= - PHPUnitReporttask - ========================================= - --> - <define name="phpunitreport"> - <element name="phpunitreport"> - <interleave> - <optional> - <attribute name="infile"/> - </optional> - <optional> - <attribute name="format"/> - </optional> - <optional> - <attribute name="styledir"/> - </optional> - <attribute name="todir"/> - <optional> - <attribute name="usesorttable"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - rSTTask - ========================================= - --> - <define name="rst"> - <element name="rst"> - <interleave> - <choice> - <attribute name="file"/> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </choice> - <optional> - <attribute name="format"> - <choice> - <value>html</value> - <value>latex</value> - <value>man</value> - <value>odt</value> - <value>s5</value> - <value>xml</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="destination"/> - </optional> - <optional> - <attribute name="uptodate"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="toolpath"/> - </optional> - <optional> - <attribute name="toolparam"/> - </optional> - <zeroOrMore> - <ref name="mapper"/> - </zeroOrMore> - <zeroOrMore> - <ref name="filterchain"/> - </zeroOrMore> - </interleave> - </element> - </define> - - <!-- - ========================================= - S3PutTask - ========================================= - --> - <define name="s3put"> - <element name="s3put"> - <interleave> - <choice> - <attribute name="source"/> - <attribute name="content"/> - </choice> - <attribute name="key"/> - <attribute name="secret"/> - <attribute name="bucket"/> - <optional> - <attribute name="object"/> - </optional> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </interleave> - </element> - </define> - - <!-- - ========================================= - S3GetTask - ========================================= - --> - <define name="s3get"> - <element name="s3get"> - <interleave> - <attribute name="key"/> - <attribute name="secret"/> - <attribute name="bucket"/> - <attribute name="object"/> - <attribute name="target"/> - </interleave> - </element> - </define> - - - <define name="scp"> - <element name="scp"> - <interleave> - <attribute name="host"/> - <optional> - <attribute name="port"> - <data type="int"/> - </attribute> - </optional> - <attribute name="username"/> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="pubkeyfile"/> - </optional> - <optional> - <attribute name="privkeyfile"/> - </optional> - <optional> - <attribute name="privkeyfilepassphrase"/> - </optional> - <optional> - <attribute name="autocreate"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="todir"/> - </optional> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="fetch"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="level"> - <choice> - <value>error</value> - <value>warning</value> - <value>info</value> - <value>verbose</value> - <value>debug</value> - </choice> - </attribute> - </optional> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </interleave> - </element> - </define> - - - <!-- - ========================================= - SshTask - ========================================= - --> - <define name="ssh"> - <element name="ssh"> - <interleave> - <attribute name="host"/> - <optional> - <attribute name="port"> - <data type="int"/> - </attribute> - </optional> - <attribute name="username"/> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="pubkeyfile"/> - </optional> - <optional> - <attribute name="privkeyfile"/> - </optional> - <optional> - <attribute name="privkeyfilepassphrase"/> - </optional> - <attribute name="command"/> - <optional> - <attribute name="property"/> - </optional> - <optional> - <attribute name="display"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - SimpleTestTask - ========================================= - --> - <define name="simpletest"> - <element name="simpletest"> - <interleave> - <optional> - <attribute name="printsummary"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonerror"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="failureproperty"/> - </optional> - <optional> - <attribute name="errorproperty"/> - </optional> - <optional> - <attribute name="debug"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <optional> - <ref name="formatter"/> - </optional> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </element> - </define> - - - <!-- - ========================================= - SvnCheckoutTask - ========================================= - --> - <define name="svncheckout"> - <element name="svncheckout"> - <interleave> - <attribute name="repositoryurl"/> - <attribute name="todir"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="username"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="nocache"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="recursive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignoreexternals"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="trustservercert"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <empty/> - </element> - </define> - - <!-- - ========================================= - SvnCommitTask - ========================================= - --> - <define name="svncommit"> - <element name="svncommit"> - <interleave> - <attribute name="message"/> - <attribute name="workingcopy"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="username"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="nocache"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="recursive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignoreexternals"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="propertyname"/> - </optional> - <optional> - <attribute name="trustservercert"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - SvnCopyTask - ========================================= - --> - <define name="svncopy"> - <element name="svncopy"> - <interleave> - <attribute name="repositoryurl"/> - <attribute name="todir"/> - <optional> - <attribute name="message"/> - </optional> - <attribute name="workingcopy"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="username"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="nocache"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="recursive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignoreexternals"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="trustservercert"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - SvnExportTask - ========================================= - --> - <define name="svnexport"> - <element name="svnexport"> - <interleave> - <attribute name="repositoryurl"/> - <attribute name="todir"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="username"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="nocache"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="recursive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignoreexternals"/> - </optional> - <optional> - <attribute name="force"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="trustservercert"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - - <!-- - ========================================= - SvnInfoTask - ========================================= - --> - <define name="svninfo"> - <element name="svninfo"> - <interleave> - <choice> - <attribute name="workingcopy"/> - <attribute name="repositoryurl"/> - </choice> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="propertyname"/> - </optional> - <optional> - <attribute name="element"/> - </optional> - <optional> - <attribute name="subelement"/> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - SvnLastRevisionTask - ========================================= - --> - <define name="svnlastrevision"> - <element name="svnlastrevision"> - <interleave> - <attribute name="workingcopy"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="propertyname"/> - </optional> - <optional> - <attribute name="lastChanged"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="forcecompatible"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - - <!-- - ========================================= - SvnListTask - ========================================= - --> - <define name="svnlist"> - <element name="svnlist"> - <interleave> - <choice> - <attribute name="workingcopy"/> - <attribute name="repositourl"/> - </choice> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="propertyname"/> - </optional> - <optional> - <attribute name="forcecompatible"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="limit"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="orderdescending"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - SvnLogTask - ========================================= - --> - <define name="svnlog"> - <element name="svnlog"> - <interleave> - <choice> - <attribute name="workingcopy"/> - <attribute name="repositourl"/> - </choice> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="propertyname"/> - </optional> - <optional> - <attribute name="forcecompatible"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="limit"> - <data type="int"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - - <!-- - ========================================= - SvnUpdateTask - ========================================= - --> - <define name="svnupdate"> - <element name="svnupdate"> - <interleave> - <attribute name="todir"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="username"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="nocache"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="recursive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignoreexternals"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="revision"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="trustservercert"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - - <!-- - ========================================= - SvnSwitchTask - ========================================= - --> - <define name="svnswitch"> - <element name="svnswitch"> - <interleave> - <attribute name="todir"/> - <attribute name="repositoryurl"/> - <optional> - <attribute name="svnpath"/> - </optional> - <optional> - <attribute name="username"/> - </optional> - <optional> - <attribute name="password"/> - </optional> - <optional> - <attribute name="nocache"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="recursive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="ignoreexternals"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="trustservercert"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - </element> - </define> - - - - <!-- - ========================================= - TarTask - ========================================= - --> - <define name="tar"> - <element name="tar"> - <interleave> - <attribute name="destfile"/> - <optional> - <attribute name="basedir"/> - </optional> - <optional> - <attribute name="compression"> - <choice> - <value>gzip</value> - <value>bzip2</value> - <value>none</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="includeemptydirs"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="longfile"> - <choice> - <value>truncate</value> - <value>fail</value> - <value>warn</value> - <value>gnu</value> - <value>omit</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="prefix"/> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - UntarTask - ========================================= - --> - <define name="untar"> - <element name="untar"> - <interleave> - <attribute name="todir"/> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="removepath"/> - </optional> - <optional> - <attribute name="forceextract"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - UnzipTask - ========================================= - --> - <define name="unzip"> - <element name="unzip"> - <interleave> - <attribute name="todir"/> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="forceextract"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - VersionTask - ========================================= - --> - <define name="version"> - <element name="version"> - <interleave> - <attribute name="releasetype"> - <choice> - <value>Major</value> - <value>Minor</value> - <value>Bugfix</value> - </choice> - </attribute> - <attribute name="file"/> - <attribute name="property"/> - </interleave> - </element> - </define> - - <!-- - ========================================= - XmlLintTask - ========================================= - --> - <define name="xmllint"> - <element name="xmllint"> - <interleave> - <attribute name="schema"/> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="useRNG"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="haltonfailure"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - XmlPropertyTask - ========================================= - --> - <define name="xmlproperty"> - <element name="xmlproperty"> - <interleave> - <attribute name="file"/> - <optional> - <attribute name="prefix"/> - </optional> - <optional> - <attribute name="keeproot"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="collapseattributes"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="delimiter"/> - </optional> - </interleave> - </element> - </define> - - <!-- - ========================================= - ZendCodeAnalyzerTask - ========================================= - --> - <define name="zendcodeanalyzer"> - <element name="zendcodeanalyzer"> - <interleave> - <attribute name="analyzerPath"/> - <optional> - <attribute name="file"/> - </optional> - <optional> - <attribute name="disable"/> - </optional> - <optional> - <attribute name="enable"/> - </optional> - <optional> - <attribute name="haltonwarning"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - - <!-- - ========================================= - ZendGuardEncodeTask - ========================================= - --> - <define name="zendguardencode"> - <element name="zendguardencode"> - <interleave> - <attribute name="zendencoderpath"/> - <optional> - <attribute name="deletesource"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="renamesourceext"/> - </optional> - <optional> - <attribute name="expires"/> - </optional> - <optional> - <attribute name="obfuscationlevel"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="optmask"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="privatekeypath"/> - </optional> - <optional> - <attribute name="productname"/> - </optional> - <optional> - <attribute name="prologfile"/> - </optional> - <optional> - <attribute name="shorttags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="asptags"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="noheader"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="usecrypto"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="encodedonly"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="forceencode"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="licenseproduct"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="signproduct"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - - <!-- - ========================================= - ZendGuardLicenseTask - ========================================= - --> - <define name="zendguardlicense"> - <element name="zendguardlicense"> - <interleave> - <attribute name="zendsignpath"/> - <attribute name="privatekeypath"/> - <attribute name="outputfile"/> - <attribute name="productname"/> - <attribute name="registeredto"/> - <attribute name="expires"/> - <optional> - <attribute name="licensetemplate"/> - </optional> - <optional> - <attribute name="iprange"/> - </optional> - <optional> - <attribute name="hardwarelocked"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="hostid"/> - </optional> - <optional> - <attribute name="userdefinedvalues"/> - </optional> - <optional> - <attribute name="xuserdefinedvalues"/> - </optional> - </interleave> - </element> - </define> - - - - <!-- - ========================================= - ZipTask - ========================================= - --> - <define name="zip"> - <element name="zip"> - <interleave> - <attribute name="destfile"/> - <optional> - <attribute name="basedir"/> - </optional> - <optional> - <attribute name="prefix"/> - </optional> - <optional> - <attribute name="includeemptydirs"> - <data type="boolean"/> - </attribute> - </optional> - </interleave> - <zeroOrMore> - <ref name="fileset"/> - </zeroOrMore> - </element> - </define> - - <!-- - ========================================= - FtpDeployTask - ========================================= - --> - <define name="ftpdeploy"> - <element name="ftpdeploy"> - <interleave> - <attribute name="host"/> - <attribute name="username"/> - <attribute name="password"/> - <optional> - <attribute name="port"> - <data type="int"/> - </attribute> - </optional> - <optional> - <attribute name="dir"/> - </optional> - <optional> - <attribute name="mode"> - <choice> - <value>ascii</value> - <value>binary</value> - </choice> - </attribute> - </optional> - <optional> - <attribute name="clearfirst"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="passive"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="level"> - <choice> - <value>error</value> - <value>warning</value> - <value>info</value> - <value>verbose</value> - <value>debug</value> - </choice> - </attribute> - </optional> - <oneOrMore> - <ref name="fileset"/> - </oneOrMore> - </interleave> - </element> - </define> - - <!-- - ====================================================================== - Filters - ====================================================================== - --> - - <define name="mapper"> - <element name="mapper"> - <interleave> - <choice> - <attribute name="classname"/> - <attribute name="type"> - <choice> - <value type="string">flatten</value> - <value type="string">glob</value> - <value type="string">merge</value> - <value type="string">identity</value> - <value type="string">regexp</value> - </choice> - </attribute> - </choice> - <optional> - <attribute name="from"/> - </optional> - <optional> - <attribute name="to"/> - </optional> - </interleave> - </element> - </define> - - <define name="param"> - <element name="param"> - <optional> - <attribute name="type"/> - </optional> - <optional> - <attribute name="key"/> - </optional> - <optional> - <attribute name="value"/> - </optional> - <optional> - <attribute name="name"/> - </optional> - <optional> - <attribute name="expression"/> - </optional> - </element> - </define> - - <define name="filterreader"> - <element name="filterreader"> - <attribute name="classname"/> - <optional> - <attribute name="classpath"/> - </optional> - <optional> - <attribute name="classpathref"/> - </optional> - <zeroOrMore> - <ref name="param"/> - </zeroOrMore> - </element> - </define> - - <define name="expandproperties"> - <element name="expandproperties"> - <empty/> - </element> - </define> - - <define name="filterchain"> - <element name="filterchain"> - <oneOrMore> - <choice> - <ref name="expandproperties"/> - <ref name="filterreader"/> - <ref name="expandproperties"/> - <ref name="headfilter"/> - <ref name="iconvfilter"/> - <ref name="linecontains"/> - <ref name="linecontainsregexp"/> - <ref name="prefixlines"/> - <ref name="replacetokens"/> - <ref name="replaceregexp"/> - <ref name="striplinecomments"/> - <ref name="stripphpcomments"/> - <ref name="stripwhitespace"/> - <ref name="tabtospaces"/> - <ref name="tailfilter"/> - <ref name="tidyfilter"/> - <ref name="xincludefilter"/> - <ref name="xsltfilter"/> - </choice> - </oneOrMore> - </element> - </define> - - <define name="linecontains"> - <element name="linecontains"> - <oneOrMore> - <ref name="contains"/> - </oneOrMore> - </element> - </define> - - <define name="contains"> - <element name="contains"> - <attribute name="value"/> - </element> - </define> - - <define name="linecontainsregexp"> - <element name="linecontainsregexp"> - <ref name="regexp"/> - </element> - </define> - - <define name="regexp"> - <element name="regexp"> - <attribute name="pattern"/> - <optional> - <attribute name="replace"/> - </optional> - <optional> - <attribute name="ignoreCase"/> - </optional> - </element> - </define> - - <define name="prefixlines"> - <element name="prefixlines"> - <attribute name="prefix"/> - </element> - </define> - - <define name="replacetokens"> - <element name="replacetokens"> - <interleave> - <optional> - <attribute name="begintoken"/> - </optional> - <optional> - <attribute name="endtoken"/> - </optional> - </interleave> - <oneOrMore> - <ref name="token"/> - </oneOrMore> - </element> - </define> - - <define name="token"> - <element name="token"> - <attribute name="key"/> - <attribute name="value"/> - </element> - </define> - - <define name="replaceregexp"> - <element name="replaceregexp"> - <oneOrMore> - <ref name="regexp"/> - </oneOrMore> - </element> - </define> - - <define name="stripwhitespace"> - <element name="stripwhitespace"> - <optional> - <attribute name="tablength"> - <data type="int"/> - </attribute> - </optional> - </element> - </define> - - <define name="striplinecomments"> - <element name="striplinecomments"> - <oneOrMore> - <ref name="comment"/> - </oneOrMore> - </element> - </define> - - <define name="comment"> - <element name="comment"> - <choice> - <attribute name="value"/> - <text/> - </choice> - </element> - </define> - - <define name="stripphpcomments"> - <element name="stripphpcomments"> - <empty/> - </element> - </define> - - <define name="tabtospaces"> - <element name="tabtospaces"> - <empty/> - </element> - </define> - - <define name="tabtospace"> - <element name="tabtospaces"> - <optional> - <attribute name="tablength"> - <data type="int"/> - </attribute> - </optional> - </element> - <empty/> - </define> - - <define name="tailfilter"> - <element name="tailfilter"> - <optional> - <attribute name="lines"> - <data type="int"/> - </attribute> - </optional> - </element> - <empty/> - </define> - - <define name="headfilter"> - <element name="headfilter"> - <optional> - <attribute name="lines"> - <data type="int"/> - </attribute> - </optional> - <empty/> - </element> - </define> - - <define name="iconvfilter"> - <element name="iconvfilter"> - <attribute name="inputencoding"/> - <attribute name="outputencoding"/> - <empty/> - </element> - </define> - - <define name="tidyfilter"> - <element name="tidyfilter"> - <optional> - <attribute name="encoding"/> - </optional> - <empty/> - </element> - </define> - - <define name="xincludefilter"> - <element name="xincludefilter"> - <optional> - <attribute name="basedir"/> - </optional> - </element> - </define> - - <define name="xsltfilter"> - <element name="xsltfilter"> - <interleave> - <attribute name="style"/> - <optional> - <attribute name="html"/> - </optional> - <zeroOrMore> - <ref name="param"/> - </zeroOrMore> - </interleave> - </element> - </define> - - - <!-- - ================================================================ - Custom tasks/filters - ================================================================ - --> - - <define name="highlightsrc"> - <element name="highlightsrc"> - <interleave> - <optional> - <attribute name="linenumber"> - <data type="boolean"/> - </attribute> - </optional> - <optional> - <attribute name="file"/> - </optional> - </interleave> - <interleave> - <zeroOrMore> - <choice> - <ref name="fileset"/> - <ref name="filterchain"/> - </choice> - </zeroOrMore> - </interleave> - </element> - </define> - - -</grammar> diff --git a/buildscripts/phing/etc/phpunit-frames.xsl b/buildscripts/phing/etc/phpunit-frames.xsl deleted file mode 100755 index a3147eb9..00000000 --- a/buildscripts/phing/etc/phpunit-frames.xsl +++ /dev/null @@ -1,694 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" - xmlns:exsl="http://exslt.org/common" - xmlns:str="http://exslt.org/strings" - xmlns:date="http://exslt.org/dates-and-times" - extension-element-prefixes="exsl str date"> -<xsl:include href="str.replace.function.xsl"/> -<xsl:output method="html" indent="yes" encoding="US-ASCII"/> -<xsl:decimal-format decimal-separator="." grouping-separator=","/> -<!-- - Copyright 2001-2004 The Apache Software Foundation - - 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. - --> - -<!-- - - Sample stylesheet to be used with Phing/PHPUnit output. - Based on JUnit stylesheets from Apache Ant. - - It creates a set of HTML files a la javadoc where you can browse easily - through all packages and classes. - - @author Michiel Rook <a href="mailto:michiel.rook@gmail.com"/> - @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/> - @author Erik Hatcher <a href="mailto:ehatcher@apache.org"/> - @author Martijn Kruithof <a href="mailto:martijn@kruithof.xs4all.nl"/> - ---> -<xsl:param name="output.dir" select="'.'"/> -<xsl:param name="output.sorttable" select="'.'"/> - - -<xsl:template match="testsuites"> - <!-- create the index.html --> - <exsl:document href="efile://{$output.dir}/index.html"> - <xsl:call-template name="index.html"/> - </exsl:document> - - <!-- create the stylesheet.css --> - <exsl:document omit-xml-declaration="yes" href="efile://{$output.dir}/stylesheet.css"> - <xsl:call-template name="stylesheet.css"/> - </exsl:document> - - <!-- create the overview-packages.html at the root --> - <exsl:document href="efile://{$output.dir}/overview-summary.html"> - <xsl:apply-templates select="." mode="overview.packages"/> - </exsl:document> - - <!-- create the all-packages.html at the root --> - <exsl:document href="efile://{$output.dir}/overview-frame.html"> - <xsl:apply-templates select="." mode="all.packages"/> - </exsl:document> - - <!-- create the all-classes.html at the root --> - <exsl:document href="efile://{$output.dir}/allclasses-frame.html"> - <xsl:apply-templates select="." mode="all.classes"/> - </exsl:document> - - <!-- process all packages --> - <xsl:for-each select="./testsuite[not(./@package = preceding-sibling::testsuite/@package)]"> - <xsl:call-template name="package"> - <xsl:with-param name="name" select="@package"/> - </xsl:call-template> - </xsl:for-each> -</xsl:template> - - -<xsl:template name="package"> - <xsl:param name="name"/> - <xsl:variable name="package.dir"> - <xsl:if test="not($name = '')"><xsl:value-of select="translate($name,'.','/')"/></xsl:if> - <xsl:if test="$name = ''">.</xsl:if> - </xsl:variable> - <!--Processing package <xsl:value-of select="@name"/> in <xsl:value-of select="$output.dir"/> --> - <!-- create a classes-list.html in the package directory --> - <exsl:document href="efile://{$output.dir}/{$package.dir}/package-frame.html"> - <xsl:call-template name="classes.list"> - <xsl:with-param name="name" select="$name"/> - </xsl:call-template> - </exsl:document> - - <!-- create a package-summary.html in the package directory --> - <exsl:document href="efile://{$output.dir}/{$package.dir}/package-summary.html"> - <xsl:call-template name="package.summary"> - <xsl:with-param name="name" select="$name"/> - </xsl:call-template> - </exsl:document> - - <!-- for each class, creates a @name.html --> - <!-- @bug there will be a problem with inner classes having the same name, it will be overwritten --> - <xsl:for-each select="/testsuites/testsuite[@package = $name]"> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{@name}.html"> - <xsl:apply-templates select="." mode="class.details"/> - </exsl:document> - <xsl:if test="string-length(./system-out)!=0"> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{@name}-out.txt"> - <xsl:value-of select="./system-out" /> - </exsl:document> - </xsl:if> - <xsl:if test="string-length(./system-err)!=0"> - <exsl:document href="efile://{$output.dir}/{$package.dir}/{@name}-err.txt"> - <xsl:value-of select="./system-err" /> - </exsl:document> - </xsl:if> - </xsl:for-each> -</xsl:template> - -<xsl:template name="index.html"> -<html> - <head> - <title>Unit Test Results.</title> - </head> - <frameset cols="20%,80%"> - <frameset rows="30%,70%"> - <frame src="overview-frame.html" name="packageListFrame"/> - <frame src="allclasses-frame.html" name="classListFrame"/> - </frameset> - <frame src="overview-summary.html" name="classFrame"/> - <noframes> - <h2>Frame Alert</h2> - <p> - This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. - </p> - </noframes> - </frameset> -</html> -</xsl:template> - -<!-- this is the stylesheet css to use for nearly everything --> -<xsl:template name="stylesheet.css"> -body { - font-family: verdana,arial,helvetica; - color:#000000; - font-size: 12px; -} -table tr td, table tr th { - font-family: verdana,arial,helvetica; - font-size: 12px; -} -table.details tr th{ - font-family: verdana,arial,helvetica; - font-weight: bold; - text-align:left; - background:#a6caf0; -} -table.details tr td{ - background:#eeeee0; -} - -p { - line-height:1.5em; - margin-top:0.5em; margin-bottom:1.0em; - font-size: 12px; -} -h1 { - margin: 0px 0px 5px; - font-family: verdana,arial,helvetica; -} -h2 { - margin-top: 1em; margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; -} -h3 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; -} -h4 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; -} -h5 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; -} -h6 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; -} -.Error { - font-weight:bold; color:red; -} -.Failure { - font-weight:bold; color:purple; -} -.small { - font-size: 9px; -} -a { - color: #003399; -} -a:hover { - color: #888888; -} -<xsl:if test="$output.sorttable = 1"> -.sortable th { - cursor: pointer; -} -</xsl:if> -</xsl:template> - - -<!-- ====================================================================== - This page is created for every testsuite class. - It prints a summary of the testsuite and detailed information about - testcase methods. - ====================================================================== --> -<xsl:template match="testsuite" mode="class.details"> - <xsl:variable name="package.name" select="@package"/> - <xsl:variable name="class.name"><xsl:if test="not($package.name = '')"><xsl:value-of select="$package.name"/>.</xsl:if><xsl:value-of select="@name"/></xsl:variable> - <html> - <head> - <title>Unit Test Results: Class <xsl:value-of select="$class.name"/></title> - <xsl:if test="$output.sorttable = 1"> - <script language="JavaScript" src="http://www.phing.info/support/sorttable.js"/> - </xsl:if> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="$package.name"/> - </xsl:call-template> - </head> - <body> - <xsl:call-template name="pageHeader"/> - <h3>Class <xsl:value-of select="$class.name"/></h3> - - <table class="details" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testsuite.test.header"/> - <xsl:apply-templates select="." mode="print.test"/> - </table> - - <h2>Tests</h2> - <table class="details sortable" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testcase.test.header"/> - <!-- - test can even not be started at all (failure to load the class) - so report the error directly - --> - <xsl:if test="./error"> - <tr class="Error"> - <td colspan="4"><xsl:apply-templates select="./error"/></td> - </tr> - </xsl:if> - <xsl:apply-templates select="./testcase | ./testsuite/testcase" mode="print.test"/> - </table> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - -<!-- ====================================================================== - This page is created for every package. - It prints the name of all classes that belongs to this package. - @param name the package name to print classes. - ====================================================================== --> -<!-- list of classes in a package --> -<xsl:template name="classes.list"> - <xsl:param name="name"/> - <html> - <head> - <title>Unit Test Classes: <xsl:value-of select="$name"/></title> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="$name"/> - </xsl:call-template> - </head> - <body> - <table width="100%"> - <tr> - <td nowrap="nowrap"> - <h2><a href="package-summary.html" target="classFrame"> - <xsl:value-of select="$name"/> - <xsl:if test="$name = ''"><none></xsl:if> - </a></h2> - </td> - </tr> - </table> - - <h2>Classes</h2> - <table width="100%"> - <xsl:for-each select="/testsuites/testsuite[./@package = $name]"> - <xsl:sort select="@name"/> - <tr> - <td nowrap="nowrap"> - <a href="{@name}.html" target="classFrame"><xsl:value-of select="@name"/></a> - </td> - </tr> - </xsl:for-each> - </table> - </body> - </html> -</xsl:template> - - -<!-- - Creates an all-classes.html file that contains a link to all package-summary.html - on each class. ---> -<xsl:template match="testsuites" mode="all.classes"> - <html> - <head> - <title>All Unit Test Classes</title> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name"/> - </xsl:call-template> - </head> - <body> - <h2>Classes</h2> - <table width="100%"> - <xsl:apply-templates select="testsuite" mode="all.classes"> - <xsl:sort select="@name"/> - </xsl:apply-templates> - </table> - </body> - </html> -</xsl:template> - -<xsl:template match="testsuite" mode="all.classes"> - <xsl:variable name="package.name" select="@package"/> - <tr> - <td nowrap="nowrap"> - <a target="classFrame"> - <xsl:attribute name="href"> - <xsl:if test="not($package.name='')"> - <xsl:value-of select="translate($package.name,'.','/')"/><xsl:text>/</xsl:text> - </xsl:if><xsl:value-of select="@name"/><xsl:text>.html</xsl:text> - </xsl:attribute> - <xsl:value-of select="@name"/> - </a> - </td> - </tr> -</xsl:template> - - -<!-- - Creates an html file that contains a link to all package-summary.html files on - each package existing on testsuites. - @bug there will be a problem here, I don't know yet how to handle unnamed package :( ---> -<xsl:template match="testsuites" mode="all.packages"> - <html> - <head> - <title>All Unit Test Packages</title> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name"/> - </xsl:call-template> - </head> - <body> - <h2><a href="overview-summary.html" target="classFrame">Home</a></h2> - <h2>Packages</h2> - <table width="100%"> - <xsl:apply-templates select="testsuite[not(./@package = preceding-sibling::testsuite/@package)]" mode="all.packages"> - <xsl:sort select="@package"/> - </xsl:apply-templates> - </table> - </body> - </html> -</xsl:template> - -<xsl:template match="testsuite" mode="all.packages"> - <tr> - <td nowrap="nowrap"> - <a href="./{translate(@package,'.','/')}/package-summary.html" target="classFrame"> - <xsl:value-of select="@package"/> - <xsl:if test="@package = ''"><none></xsl:if> - </a> - </td> - </tr> -</xsl:template> - - -<xsl:template match="testsuites" mode="overview.packages"> - <html> - <head> - <title>Unit Test Results: Summary</title> - <xsl:if test="$output.sorttable = 1"> - <script language="JavaScript" src="http://www.phing.info/support/sorttable.js"/> - </xsl:if> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name"/> - </xsl:call-template> - </head> - <body> - <xsl:attribute name="onload">open('allclasses-frame.html','classListFrame')</xsl:attribute> - <xsl:call-template name="pageHeader"/> - <h2>Summary</h2> - <xsl:variable name="testCount" select="sum(testsuite/@tests)"/> - <xsl:variable name="errorCount" select="sum(testsuite/@errors)"/> - <xsl:variable name="failureCount" select="sum(testsuite/@failures)"/> - <xsl:variable name="timeCount" select="sum(testsuite/@time)"/> - <xsl:variable name="successRate" select="($testCount - $failureCount - $errorCount) div $testCount"/> - <table class="details" border="0" cellpadding="5" cellspacing="2" width="95%"> - <tr valign="top"> - <th>Tests</th> - <th>Failures</th> - <th>Errors</th> - <th>Success rate</th> - <th>Time</th> - </tr> - <tr valign="top"> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="$errorCount > 0">Error</xsl:when> - <xsl:when test="$failureCount > 0">Failure</xsl:when> - <xsl:otherwise>Pass</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <td><xsl:value-of select="$testCount"/></td> - <td><xsl:value-of select="$failureCount"/></td> - <td><xsl:value-of select="$errorCount"/></td> - <td> - <xsl:call-template name="display-percent"> - <xsl:with-param name="value" select="$successRate"/> - </xsl:call-template> - </td> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="$timeCount"/> - </xsl:call-template> - </td> - - </tr> - </table> - <table border="0" width="95%"> - <tr> - <td style="text-align: justify;"> - Note: <em>failures</em> are anticipated and checked for with assertions while <em>errors</em> are unanticipated. - </td> - </tr> - </table> - - <h2>Packages</h2> - <table class="details sortable" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testsuite.test.header"/> - <xsl:for-each select="testsuite[not(./@package = preceding-sibling::testsuite/@package)]"> - <xsl:sort select="@package" order="ascending"/> - <!-- get the node set containing all testsuites that have the same package --> - <xsl:variable name="insamepackage" select="/testsuites/testsuite[./@package = current()/@package]"/> - <tr valign="top"> - <!-- display a failure if there is any failure/error in the package --> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="sum($insamepackage/@errors) > 0">Error</xsl:when> - <xsl:when test="sum($insamepackage/@failures) > 0">Failure</xsl:when> - <xsl:otherwise>Pass</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <td><a href="./{translate(@package,'.','/')}/package-summary.html"> - <xsl:value-of select="@package"/> - <xsl:if test="@package = ''"><none></xsl:if> - </a></td> - <td><xsl:value-of select="sum($insamepackage/@tests)"/></td> - <td><xsl:value-of select="sum($insamepackage/@errors)"/></td> - <td><xsl:value-of select="sum($insamepackage/@failures)"/></td> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="sum($insamepackage/@time)"/> - </xsl:call-template> - </td> - </tr> - </xsl:for-each> - </table> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - - -<xsl:template name="package.summary"> - <xsl:param name="name"/> - <html> - <head> - <title>Unit Test Results: Package <xsl:value-of select="$name"/></title> - <xsl:if test="$output.sorttable = 1"> - <script language="JavaScript" src="http://www.phing.info/support/sorttable.js"/> - </xsl:if> - <xsl:call-template name="create.stylesheet.link"> - <xsl:with-param name="package.name" select="$name"/> - </xsl:call-template> - </head> - <body> - <xsl:attribute name="onload">open('package-frame.html','classListFrame')</xsl:attribute> - <xsl:call-template name="pageHeader"/> - <h3>Package <xsl:value-of select="$name"/></h3> - - <!--table border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="class.metrics.header"/> - <xsl:apply-templates select="." mode="print.metrics"/> - </table--> - - <xsl:variable name="insamepackage" select="/testsuites/testsuite[./@package = $name]"/> - <xsl:if test="count($insamepackage) > 0"> - <h2>Classes</h2> - <p> - <table class="details sortable" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testsuite.test.header"/> - <xsl:apply-templates select="$insamepackage" mode="print.test"> - <xsl:sort select="@name"/> - </xsl:apply-templates> - </table> - </p> - </xsl:if> - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - - -<!-- - transform string like a.b.c to ../../../ - @param path the path to transform into a descending directory path ---> -<xsl:template name="path"> - <xsl:param name="path"/> - <xsl:if test="contains($path,'.')"> - <xsl:text>../</xsl:text> - <xsl:call-template name="path"> - <xsl:with-param name="path"><xsl:value-of select="substring-after($path,'.')"/></xsl:with-param> - </xsl:call-template> - </xsl:if> - <xsl:if test="not(contains($path,'.')) and not($path = '')"> - <xsl:text>../</xsl:text> - </xsl:if> -</xsl:template> - - -<!-- create the link to the stylesheet based on the package name --> -<xsl:template name="create.stylesheet.link"> - <xsl:param name="package.name"/> - <link rel="stylesheet" type="text/css" title="Style"><xsl:attribute name="href"><xsl:if test="not($package.name = 'unnamed package')"><xsl:call-template name="path"><xsl:with-param name="path" select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></link> -</xsl:template> - - -<!-- Page HEADER --> -<xsl:template name="pageHeader"> - <h1>Unit Test Results</h1> - <table width="100%"> - <tr> - <td align="left"></td> - <td align="right">Designed for use with <a href='http://www.phpunit.de'>PHPUnit</a> and <a href='http://www.phing.info/'>Phing</a>.</td> - </tr> - </table> - <hr size="1"/> -</xsl:template> - -<!-- Page Footer --> -<xsl:template name="pageFooter"> - <table width="100%"> - <tr><td><hr noshade="yes" size="1"/></td></tr> - <tr><td class="small">Report generated at <xsl:value-of select="date:date-time()"/></td></tr> - </table> -</xsl:template> - -<!-- class header --> -<xsl:template name="testsuite.test.header"> - <tr valign="top"> - <th width="80%">Name</th> - <th>Tests</th> - <th>Errors</th> - <th>Failures</th> - <th nowrap="nowrap">Time(s)</th> - </tr> -</xsl:template> - -<!-- method header --> -<xsl:template name="testcase.test.header"> - <tr valign="top"> - <th>Name</th> - <th>Status</th> - <th width="80%">Type</th> - <th nowrap="nowrap">Time(s)</th> - </tr> -</xsl:template> - - -<!-- class information --> -<xsl:template match="testsuite" mode="print.test"> - <tr valign="top"> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="@errors[.> 0]">Error</xsl:when> - <xsl:when test="@failures[.> 0]">Failure</xsl:when> - <xsl:otherwise>Pass</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <td><a href="{@name}.html"><xsl:value-of select="@name"/></a></td> - <td><xsl:apply-templates select="@tests"/></td> - <td><xsl:apply-templates select="@errors"/></td> - <td><xsl:apply-templates select="@failures"/></td> - <td><xsl:call-template name="display-time"> - <xsl:with-param name="value" select="@time"/> - </xsl:call-template> - </td> - </tr> -</xsl:template> - -<xsl:template match="testcase" mode="print.test"> - <tr valign="top"> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="error">Error</xsl:when> - <xsl:when test="failure">Failure</xsl:when> - <xsl:otherwise>TableRowColor</xsl:otherwise> - </xsl:choose> - </xsl:attribute> - <td><xsl:value-of select="@name"/></td> - <xsl:choose> - <xsl:when test="failure"> - <td>Failure</td> - <td><xsl:apply-templates select="failure"/></td> - </xsl:when> - <xsl:when test="error"> - <td>Error</td> - <td><xsl:apply-templates select="error"/></td> - </xsl:when> - <xsl:otherwise> - <td>Success</td> - <td></td> - </xsl:otherwise> - </xsl:choose> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="@time"/> - </xsl:call-template> - </td> - </tr> -</xsl:template> - - -<!-- Note : the below template error and failure are the same style - so just call the same style store in the toolkit template --> -<xsl:template match="failure"> - <xsl:call-template name="display-failures"/> -</xsl:template> - -<xsl:template match="error"> - <xsl:call-template name="display-failures"/> -</xsl:template> - -<!-- Style for the error and failure in the testcase template --> -<xsl:template name="display-failures"> - <xsl:choose> - <xsl:when test="not(@message)">N/A</xsl:when> - <xsl:otherwise> - <xsl:value-of select="@message"/> - </xsl:otherwise> - </xsl:choose> - <!-- display the stacktrace --> - <br/><br/> - <code> - <xsl:call-template name="br-replace"> - <xsl:with-param name="word" select="."/> - </xsl:call-template> - </code> -</xsl:template> - -<!-- - template that will convert a carriage return into a br tag - @param word the text from which to convert CR to BR tag ---> -<xsl:template name="br-replace"> - <xsl:param name="word"/> - <xsl:choose> - <xsl:when test="contains($word,'
')"> - <xsl:value-of select="substring-before($word,'
')"/> - <br /> - <xsl:call-template name="br-replace"> - <xsl:with-param name="word" select="substring-after($word,'
')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$word"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="display-time"> - <xsl:param name="value"/> - <xsl:value-of select="format-number($value,'0.000')"/> -</xsl:template> - -<xsl:template name="display-percent"> - <xsl:param name="value"/> - <xsl:value-of select="format-number($value,'0.00%')"/> -</xsl:template> -</xsl:stylesheet> - diff --git a/buildscripts/phing/etc/phpunit-noframes.xsl b/buildscripts/phing/etc/phpunit-noframes.xsl deleted file mode 100755 index d71e58d9..00000000 --- a/buildscripts/phing/etc/phpunit-noframes.xsl +++ /dev/null @@ -1,448 +0,0 @@ -<?xml version="1.0"?> -<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" - xmlns:exsl="http://exslt.org/common" - xmlns:str="http://exslt.org/strings" - xmlns:date="http://exslt.org/dates-and-times" - extension-element-prefixes="exsl str date"> -<xsl:include href="str.replace.function.xsl"/> -<xsl:output method="html" indent="yes" encoding="US-ASCII" - doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" /> -<xsl:decimal-format decimal-separator="." grouping-separator="," /> -<!-- - Copyright 2001-2004 The Apache Software Foundation - - 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. - --> - -<!-- - - Sample stylesheet to be used with Phing/PHPUnit output. - Based on JUnit stylesheets from Apache Ant. - - It creates a non-framed report that can be useful to send via - e-mail or such. - - @author Michiel Rook <a href="mailto:michiel.rook@gmail.com"/> - @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/> - @author Erik Hatcher <a href="mailto:ehatcher@apache.org"/> - ---> -<xsl:param name="output.sorttable" select="'.'"/> - -<xsl:template match="testsuites"> - <html> - <head> - <title>Unit Test Results</title> - <xsl:if test="$output.sorttable = 1"> - <script language="JavaScript" src="http://www.phing.info/support/sorttable.js"/> - </xsl:if> - <style type="text/css"> - body { - font-family: verdana,arial,helvetica; - color:#000000; - font-size: 12px; - } - table tr td, table tr th { - font-family: verdana,arial,helvetica; - font-size: 12px; - } - table.details tr th{ - font-family: verdana,arial,helvetica; - font-weight: bold; - text-align:left; - background:#a6caf0; - } - table.details tr td{ - background:#eeeee0; - } - - p { - line-height:1.5em; - margin-top:0.5em; margin-bottom:1.0em; - font-size: 12px; - } - h1 { - margin: 0px 0px 5px; - font-family: verdana,arial,helvetica; - } - h2 { - margin-top: 1em; margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; - } - h3 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; - } - h4 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; - } - h5 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; - } - h6 { - margin-bottom: 0.5em; - font-family: verdana,arial,helvetica; - } - .Error { - font-weight:bold; color:red; - } - .Failure { - font-weight:bold; color:purple; - } - .small { - font-size: 9px; - } - a { - color: #003399; - } - a:hover { - color: #888888; - } - <xsl:if test="$output.sorttable = 1"> - .sortable th { - cursor: pointer; - } - </xsl:if> - </style> - </head> - <body> - <a name="top"></a> - <xsl:call-template name="pageHeader"/> - - <!-- Summary part --> - <xsl:call-template name="summary"/> - <hr size="1" width="95%" align="left"/> - - <!-- Package List part --> - <xsl:call-template name="packagelist"/> - <hr size="1" width="95%" align="left"/> - - <!-- For each package create its part --> - <xsl:call-template name="packages"/> - <hr size="1" width="95%" align="left"/> - - <!-- For each class create the part --> - <xsl:call-template name="classes"/> - - <xsl:call-template name="pageFooter"/> - </body> - </html> -</xsl:template> - - - - <!-- ================================================================== --> - <!-- Write a list of all packages with an hyperlink to the anchor of --> - <!-- of the package name. --> - <!-- ================================================================== --> - <xsl:template name="packagelist"> - <h2>Packages</h2> - Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers. - <table class="details sortable" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testsuite.test.header"/> - <!-- list all packages recursively --> - <xsl:for-each select="./testsuite[not(./@package = preceding-sibling::testsuite/@package)]"> - <xsl:sort select="@package"/> - <xsl:variable name="testsuites-in-package" select="/testsuites/testsuite[./@package = current()/@package]"/> - <xsl:variable name="testCount" select="sum($testsuites-in-package/@tests)"/> - <xsl:variable name="errorCount" select="sum($testsuites-in-package/@errors)"/> - <xsl:variable name="failureCount" select="sum($testsuites-in-package/@failures)"/> - <xsl:variable name="timeCount" select="sum($testsuites-in-package/@time)"/> - - <!-- write a summary for the package --> - <tr valign="top"> - <!-- set a nice color depending if there is an error/failure --> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="$failureCount > 0">Failure</xsl:when> - <xsl:when test="$errorCount > 0">Error</xsl:when> - </xsl:choose> - </xsl:attribute> - <td><a href="#{@package}"><xsl:value-of select="@package"/></a></td> - <td><xsl:value-of select="$testCount"/></td> - <td><xsl:value-of select="$errorCount"/></td> - <td><xsl:value-of select="$failureCount"/></td> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="$timeCount"/> - </xsl:call-template> - </td> - </tr> - </xsl:for-each> - </table> - </xsl:template> - - - <!-- ================================================================== --> - <!-- Write a package level report --> - <!-- It creates a table with values from the document: --> - <!-- Name | Tests | Errors | Failures | Time --> - <!-- ================================================================== --> - <xsl:template name="packages"> - <!-- create an anchor to this package name --> - <xsl:for-each select="/testsuites/testsuite[not(./@package = preceding-sibling::testsuite/@package)]"> - <xsl:sort select="@package"/> - <a name="{@package}"></a> - <h3>Package <xsl:value-of select="@package"/></h3> - - <table class="details sortable" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testsuite.test.header"/> - - <!-- match the testsuites of this package --> - <xsl:apply-templates select="/testsuites/testsuite[./@package = current()/@package]" mode="print.test"/> - </table> - <a href="#top">Back to top</a> - <p/> - <p/> - </xsl:for-each> - </xsl:template> - - <xsl:template name="classes"> - <xsl:for-each select="testsuite"> - <xsl:sort select="@name"/> - <!-- create an anchor to this class name --> - <a name="{@name}"></a> - <h3>TestCase <xsl:value-of select="@name"/></h3> - - <table class="details sortable" border="0" cellpadding="5" cellspacing="2" width="95%"> - <xsl:call-template name="testcase.test.header"/> - <!-- - test can even not be started at all (failure to load the class) - so report the error directly - --> - <xsl:if test="./error"> - <tr class="Error"> - <td colspan="4"><xsl:apply-templates select="./error"/></td> - </tr> - </xsl:if> - <xsl:apply-templates select="./testcase | ./testsuite/testcase" mode="print.test"/> - </table> - <p/> - - <a href="#top">Back to top</a> - </xsl:for-each> - </xsl:template> - - <xsl:template name="summary"> - <h2>Summary</h2> - <xsl:variable name="testCount" select="sum(testsuite/@tests)"/> - <xsl:variable name="errorCount" select="sum(testsuite/@errors)"/> - <xsl:variable name="failureCount" select="sum(testsuite/@failures)"/> - <xsl:variable name="timeCount" select="sum(testsuite/@time)"/> - <xsl:variable name="successRate" select="($testCount - $failureCount - $errorCount) div $testCount"/> - <table class="details" border="0" cellpadding="5" cellspacing="2" width="95%"> - <tr valign="top"> - <th>Tests</th> - <th>Failures</th> - <th>Errors</th> - <th>Success rate</th> - <th>Time</th> - </tr> - <tr valign="top"> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="$failureCount > 0">Failure</xsl:when> - <xsl:when test="$errorCount > 0">Error</xsl:when> - </xsl:choose> - </xsl:attribute> - <td><xsl:value-of select="$testCount"/></td> - <td><xsl:value-of select="$failureCount"/></td> - <td><xsl:value-of select="$errorCount"/></td> - <td> - <xsl:call-template name="display-percent"> - <xsl:with-param name="value" select="$successRate"/> - </xsl:call-template> - </td> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="$timeCount"/> - </xsl:call-template> - </td> - - </tr> - </table> - <table border="0" width="95%"> - <tr> - <td style="text-align: justify;"> - Note: <i>failures</i> are anticipated and checked for with assertions while <i>errors</i> are unanticipated. - </td> - </tr> - </table> - </xsl:template> - -<!-- Page HEADER --> -<xsl:template name="pageHeader"> - <h1>Unit Test Results</h1> - <table width="100%"> - <tr> - <td align="left"></td> - <td align="right">Designed for use with <a href='http://www.phpunit.de'>PHPUnit</a> and <a href='http://www.phing.info/'>Phing</a>.</td> - </tr> - </table> - <hr size="1"/> -</xsl:template> - -<!-- Page Footer --> -<xsl:template name="pageFooter"> - <table width="100%"> - <tr><td><hr noshade="yes" size="1"/></td></tr> - <tr><td class="small">Report generated at <xsl:value-of select="date:date-time()"/></td></tr> - </table> -</xsl:template> - -<xsl:template match="testsuite" mode="header"> - <tr valign="top"> - <th width="80%">Name</th> - <th>Tests</th> - <th>Errors</th> - <th>Failures</th> - <th nowrap="nowrap">Time(s)</th> - </tr> -</xsl:template> - -<!-- class header --> -<xsl:template name="testsuite.test.header"> - <tr valign="top"> - <th width="80%">Name</th> - <th>Tests</th> - <th>Errors</th> - <th>Failures</th> - <th nowrap="nowrap">Time(s)</th> - </tr> -</xsl:template> - -<!-- method header --> -<xsl:template name="testcase.test.header"> - <tr valign="top"> - <th>Name</th> - <th>Status</th> - <th width="80%">Type</th> - <th nowrap="nowrap">Time(s)</th> - </tr> -</xsl:template> - - -<!-- class information --> -<xsl:template match="testsuite" mode="print.test"> - <tr valign="top"> - <!-- set a nice color depending if there is an error/failure --> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="@failures[.> 0]">Failure</xsl:when> - <xsl:when test="@errors[.> 0]">Error</xsl:when> - </xsl:choose> - </xsl:attribute> - - <!-- print testsuite information --> - <td><a href="#{@name}"><xsl:value-of select="@name"/></a></td> - <td><xsl:value-of select="@tests"/></td> - <td><xsl:value-of select="@errors"/></td> - <td><xsl:value-of select="@failures"/></td> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="@time"/> - </xsl:call-template> - </td> - </tr> -</xsl:template> - -<xsl:template match="testcase" mode="print.test"> - <tr valign="top"> - <xsl:attribute name="class"> - <xsl:choose> - <xsl:when test="failure | error">Error</xsl:when> - </xsl:choose> - </xsl:attribute> - <td><xsl:value-of select="@name"/></td> - <xsl:choose> - <xsl:when test="failure"> - <td>Failure</td> - <td><xsl:apply-templates select="failure"/></td> - </xsl:when> - <xsl:when test="error"> - <td>Error</td> - <td><xsl:apply-templates select="error"/></td> - </xsl:when> - <xsl:otherwise> - <td>Success</td> - <td></td> - </xsl:otherwise> - </xsl:choose> - <td> - <xsl:call-template name="display-time"> - <xsl:with-param name="value" select="@time"/> - </xsl:call-template> - </td> - </tr> -</xsl:template> - - -<xsl:template match="failure"> - <xsl:call-template name="display-failures"/> -</xsl:template> - -<xsl:template match="error"> - <xsl:call-template name="display-failures"/> -</xsl:template> - -<!-- Style for the error and failure in the tescase template --> -<xsl:template name="display-failures"> - <xsl:choose> - <xsl:when test="not(@message)">N/A</xsl:when> - <xsl:otherwise> - <xsl:value-of select="@message"/> - </xsl:otherwise> - </xsl:choose> - <!-- display the stacktrace --> - <code> - <br/><br/> - <xsl:call-template name="br-replace"> - <xsl:with-param name="word" select="."/> - </xsl:call-template> - </code> -</xsl:template> - -<!-- - template that will convert a carriage return into a br tag - @param word the text from which to convert CR to BR tag ---> -<xsl:template name="br-replace"> - <xsl:param name="word"/> - <xsl:choose> - <xsl:when test="contains($word,'
')"> - <xsl:value-of select="substring-before($word,'
')"/> - <br /> - <xsl:call-template name="br-replace"> - <xsl:with-param name="word" select="substring-after($word,'
')"/> - </xsl:call-template> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$word"/> - </xsl:otherwise> - </xsl:choose> -</xsl:template> - -<xsl:template name="display-time"> - <xsl:param name="value"/> - <xsl:value-of select="format-number($value,'0.000')"/> -</xsl:template> - -<xsl:template name="display-percent"> - <xsl:param name="value"/> - <xsl:value-of select="format-number($value,'0.00%')"/> -</xsl:template> - -</xsl:stylesheet> - diff --git a/buildscripts/phing/etc/str.replace.function.xsl b/buildscripts/phing/etc/str.replace.function.xsl deleted file mode 100755 index 5d74e86c..00000000 --- a/buildscripts/phing/etc/str.replace.function.xsl +++ /dev/null @@ -1,105 +0,0 @@ -<?xml version="1.0"?>
-<xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:str="http://exslt.org/strings"
- xmlns:func="http://exslt.org/functions"
- xmlns:exsl="http://exslt.org/common"
- extension-element-prefixes="str exsl func">
-
-<func:function name="str:replace">
- <xsl:param name="string" select="''" />
- <xsl:param name="search" select="/.." />
- <xsl:param name="replace" select="/.." />
- <xsl:choose>
- <xsl:when test="not($string)">
- <func:result select="/.." />
- </xsl:when>
- <xsl:when test="function-available('exsl:node-set')">
- <!-- this converts the search and replace arguments to node sets
- if they are one of the other XPath types -->
- <xsl:variable name="search-nodes-rtf">
- <xsl:copy-of select="$search" />
- </xsl:variable>
- <xsl:variable name="replace-nodes-rtf">
- <xsl:copy-of select="$replace" />
- </xsl:variable>
- <xsl:variable name="replacements-rtf">
- <xsl:for-each select="exsl:node-set($search-nodes-rtf)/node()">
- <xsl:variable name="pos" select="position()" />
- <replace search="{.}">
- <xsl:copy-of select="exsl:node-set($replace-nodes-rtf)/node()[$pos]" />
- </replace>
- </xsl:for-each>
- </xsl:variable>
- <xsl:variable name="sorted-replacements-rtf">
- <xsl:for-each select="exsl:node-set($replacements-rtf)/replace">
- <xsl:sort select="string-length(@search)" data-type="number" order="descending" />
- <xsl:copy-of select="." />
- </xsl:for-each>
- </xsl:variable>
- <xsl:variable name="result">
- <xsl:choose>
- <xsl:when test="not($search)">
- <xsl:value-of select="$string" />
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="str:_replace">
- <xsl:with-param name="string" select="$string" />
- <xsl:with-param name="replacements" select="exsl:node-set($sorted-replacements-rtf)/replace" />
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <func:result select="exsl:node-set($result)/node()" />
- </xsl:when>
- <xsl:otherwise>
- <xsl:message terminate="yes">
- ERROR: function implementation of str:replace() relies on exsl:node-set().
- </xsl:message>
- </xsl:otherwise>
- </xsl:choose>
-</func:function>
-
-<xsl:template name="str:_replace">
- <xsl:param name="string" select="''" />
- <xsl:param name="replacements" select="/.." />
- <xsl:choose>
- <xsl:when test="not($string)" />
- <xsl:when test="not($replacements)">
- <xsl:value-of select="$string" />
- </xsl:when>
- <xsl:otherwise>
- <xsl:variable name="replacement" select="$replacements[1]" />
- <xsl:variable name="search" select="$replacement/@search" />
- <xsl:choose>
- <xsl:when test="not(string($search))">
- <xsl:value-of select="substring($string, 1, 1)" />
- <xsl:copy-of select="$replacement/node()" />
- <xsl:call-template name="str:_replace">
- <xsl:with-param name="string" select="substring($string, 2)" />
- <xsl:with-param name="replacements" select="$replacements" />
- </xsl:call-template>
- </xsl:when>
- <xsl:when test="contains($string, $search)">
- <xsl:call-template name="str:_replace">
- <xsl:with-param name="string" select="substring-before($string, $search)" />
- <xsl:with-param name="replacements" select="$replacements[position() > 1]" />
- </xsl:call-template>
- <xsl:copy-of select="$replacement/node()" />
- <xsl:call-template name="str:_replace">
- <xsl:with-param name="string" select="substring-after($string, $search)" />
- <xsl:with-param name="replacements" select="$replacements" />
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="str:_replace">
- <xsl:with-param name="string" select="$string" />
- <xsl:with-param name="replacements" select="$replacements[position() > 1]" />
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:otherwise>
- </xsl:choose>
-</xsl:template>
-
-</xsl:stylesheet>
\ No newline at end of file |