diff options
author | James Shaw <jshaw@netsurf-browser.org> | 2007-08-09 21:04:37 +0000 |
---|---|---|
committer | James Shaw <jshaw@netsurf-browser.org> | 2007-08-09 21:04:37 +0000 |
commit | 94e8b36349790df2f7fcafa91b5104097373107d (patch) | |
tree | be5385c7e21545db3ad9275c17a80e8b4557c932 /test | |
parent | f8a4be170f62e8770324b9fb2a9616f5dda31aec (diff) | |
download | libdom-94e8b36349790df2f7fcafa91b5104097373107d.tar.gz libdom-94e8b36349790df2f7fcafa91b5104097373107d.tar.bz2 |
Add assertTrue and assertFalse templates; add boolean primitive to ctypes.xml. Bugfix get-ctype to translate primitive typename when specified.
svn path=/trunk/dom/; revision=3494
Diffstat (limited to 'test')
-rw-r--r-- | test/transform/ctypes.xml | 1 | ||||
-rw-r--r-- | test/transform/test-to-c.xsl | 28 |
2 files changed, 28 insertions, 1 deletions
diff --git a/test/transform/ctypes.xml b/test/transform/ctypes.xml index 148b1c4..579e317 100644 --- a/test/transform/ctypes.xml +++ b/test/transform/ctypes.xml @@ -1,6 +1,7 @@ <?xml version="1.0" ?> <types> <primitive idl="int" c="int"/> + <primitive idl="boolean" c="bool"/> <type idl="Attr" c="dom_attr"/> <type idl="Document" c="dom_document"> diff --git a/test/transform/test-to-c.xsl b/test/transform/test-to-c.xsl index 8c8f2cb..f530264 100644 --- a/test/transform/test-to-c.xsl +++ b/test/transform/test-to-c.xsl @@ -558,9 +558,32 @@ Assert templates <!-- TODO: what does the @id string do, and do we need it here? --> <xsl:text> assert(</xsl:text><xsl:value-of select="@actual"/><xsl:text> == NULL); - </xsl:text> +</xsl:text> +</xsl:template> + +<xsl:template match="*[local-name() = 'assertTrue']" mode="body"> + <!-- TODO: what does the @id string do, and do we need it here? --> + <xsl:text> + assert(</xsl:text><xsl:value-of select="@actual"/><xsl:text> == true); +</xsl:text> </xsl:template> +<xsl:template match="*[local-name() = 'assertFalse']" mode="body"> + <!-- TODO: what does the @id string do, and do we need it here? --> + <xsl:text> + assert(</xsl:text><xsl:value-of select="@actual"/><xsl:text> == false); +</xsl:text> +</xsl:template> + +<!-- +TODO: somehow want to reuse this for <equals> tests. +The problem is that <equals> is nested inside <if>, and for DOMStrings, +a temporary string must be created first. + +Perhaps the <if> template could <xsl:apply-templates/> in two modes. +The first generates temporary variables, and the second generates the equality +test itself. + --> <xsl:template match="*[local-name() = 'assertEquals']" mode="body"> <xsl:variable name="vardefs" select="//*[local-name() = 'var']"/> @@ -710,6 +733,9 @@ Helper templates <xsl:when test="$ctypes/types/type[@idl = $type]/@c"> <xsl:value-of select="$ctypes/types/type[@idl = $type]/@c"/> </xsl:when> + <xsl:when test="$ctypes/types/primitive[@idl = $type]/@c"> + <xsl:value-of select="$ctypes/types/primitive[@idl = $type]/@c"/> + </xsl:when> <xsl:otherwise> <xsl:value-of select="$type"/> </xsl:otherwise> |