diff options
Diffstat (limited to 'tests/exslt/crypto/crypt.1.xsl')
-rw-r--r-- | tests/exslt/crypto/crypt.1.xsl | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/exslt/crypto/crypt.1.xsl b/tests/exslt/crypto/crypt.1.xsl new file mode 100644 index 00000000..f986943a --- /dev/null +++ b/tests/exslt/crypto/crypt.1.xsl @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:crypto="http://exslt.org/crypto" + exclude-result-prefixes="crypto" + version="1.0"> + + <xsl:output indent="yes"/> + + <xsl:template match="test-cases"> + <test-results> + <xsl:apply-templates select="test-case"/> + </test-results> + </xsl:template> + + <xsl:template match="test-case"> + <xsl:variable name="ciphertext" select="crypto:rc4_encrypt(key, data)"/> + <xsl:variable name="plaintext" select="crypto:rc4_decrypt(key, $ciphertext)"/> + <test-result> + <ciphertext> + <xsl:value-of select="$ciphertext"/> + </ciphertext> + <match> + <xsl:choose> + <xsl:when test="$plaintext = data">OK</xsl:when> + <xsl:otherwise>FAIL</xsl:otherwise> + </xsl:choose> + </match> + </test-result> + </xsl:template> + +</xsl:stylesheet> |