jstrachan 2003/01/22 03:21:20
Modified: jelly/jelly-tags/html/src/java/org/apache/commons/jelly/tags/html
ParseTag.java
jelly/jelly-tags/html build.xml .cvsignore
jelly/jelly-tags/html/src/test/org/apache/commons/jelly/html
suite.jelly
Log:
* Fixed the unit tests
* Regenerated the Ant build
* Added support for parsing XML which is inside a String variable. This can now be
done via
<html:parse var="doc" text="${whatever}"/>
Also added a JellyUnit test case to check this works
Revision Changes Path
1.6 +7 -1
jakarta-commons-sandbox/jelly/jelly-tags/html/src/java/org/apache/commons/jelly/tags/html/ParseTag.java
Index: ParseTag.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/jelly/jelly-tags/html/src/java/org/apache/commons/jelly/tags/html/ParseTag.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- ParseTag.java 19 Dec 2002 15:03:51 -0000 1.5
+++ ParseTag.java 22 Jan 2003 11:21:19 -0000 1.6
@@ -101,7 +101,13 @@
}
Document document = null;
if (html == null) {
- document = parseBody(output);
+ String text = getText();
+ if (text != null) {
+ document = parseText(text);
+ }
+ else {
+ document = parseBody(output);
+ }
}
else {
document = parse(html);
1.4 +145 -187 jakarta-commons-sandbox/jelly/jelly-tags/html/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/jelly/jelly-tags/html/build.xml,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- build.xml 17 Jan 2003 15:48:02 -0000 1.3
+++ build.xml 22 Jan 2003 11:21:19 -0000 1.4
@@ -1,238 +1,196 @@
<?xml version="1.0" encoding="UTF-8"?>
<project default="jar" name="commons-jelly-tags-html" basedir=".">
-
- <property name="defaulttargetdir" value="target"></property>
- <property name="classesdir" value="target/classes"></property>
- <property name="testclassesdir" value="target/test-classes"></property>
- <property name="testreportdir" value="target/test-reports"></property>
-
-
-
-
-
-
-
-
-
-
- <property name="resourcedir" value="."></property>
-
- <property name="distdir" value="dist"></property>
- <property name="javadocdir" value="target/docs/apidocs"></property>
- <property name="final.name"
value="commons-jelly-tags-html-1.0-SNAPSHOT"></property>
-
+ <property name="defaulttargetdir" value="target">
+ </property>
+ <property name="classesdir" value="target/classes">
+ </property>
+ <property name="testclassesdir" value="target/test-classes">
+ </property>
+ <property name="testreportdir" value="target/test-reports">
+ </property>
+ <property name="distdir" value="dist">
+ </property>
+ <property name="javadocdir" value="target/docs/apidocs">
+ </property>
+ <property name="final.name" value="commons-jelly-tags-html-1.0-SNAPSHOT">
+ </property>
<target name="init" description="o Initializes some properties">
- <mkdir dir="lib"></mkdir>
+ <mkdir dir="lib">
+ </mkdir>
<condition property="noget">
- <equals arg2="only" arg1="${build.sysclasspath}"></equals>
+ <equals arg2="only" arg1="${build.sysclasspath}">
+ </equals>
</condition>
</target>
-
<target name="compile" description="o Compile the code" depends="get-deps">
-
- <mkdir dir="${classesdir}"></mkdir>
-
+ <mkdir dir="${classesdir}">
+ </mkdir>
<javac destdir="${classesdir}" deprecation="true" debug="true" optimize="false"
excludes="**/package.html">
<src>
- <pathelement location="src/java"></pathelement>
+ <pathelement location="src/java">
+ </pathelement>
</src>
<classpath>
<fileset dir="lib">
- <include name="*.jar"></include>
+ <include name="*.jar">
+ </include>
</fileset>
</classpath>
</javac>
-
-
-
-
<copy todir="${classesdir}">
-
-
-
-
<fileset dir="src/java">
-
-
- <include name="**/*.properties"></include>
-
-
+ <include name="**/*.properties">
+ </include>
</fileset>
</copy>
-
-
-
-
-
-
<copy todir="${testclassesdir}">
-
-
-
-
<fileset dir="src/test">
-
-
- <include name="**/*.jelly"></include>
-
- <include name="**/*.xml"></include>
-
- <include name="**/*.xsl"></include>
-
- <include name="**/*.rng"></include>
-
- <include name="**/*.dtd"></include>
-
- <include name="**/*.properties"></include>
-
- <include name="**/*.html"></include>
-
-
+ <include name="**/*.jelly">
+ </include>
+ <include name="**/*.xml">
+ </include>
+ <include name="**/*.xsl">
+ </include>
+ <include name="**/*.rng">
+ </include>
+ <include name="**/*.dtd">
+ </include>
+ <include name="**/*.properties">
+ </include>
+ <include name="**/*.html">
+ </include>
</fileset>
</copy>
-
-
-
</target>
-
<target name="jar" description="o Create the jar" depends="compile,test">
-
- <jar jarfile="target/${final.name}.jar" excludes="**/package.html"
basedir="${classesdir}"></jar>
-
+ <jar jarfile="target/${final.name}.jar" excludes="**/package.html"
basedir="${classesdir}">
+ </jar>
</target>
-
<target name="clean" description="o Clean up the generated directories">
- <delete dir="${defaulttargetdir}"></delete>
- <delete dir="${distdir}"></delete>
+ <delete dir="${defaulttargetdir}">
+ </delete>
+ <delete dir="${distdir}">
+ </delete>
</target>
-
<target name="dist" description="o Create a distribution" depends="jar, javadoc">
- <mkdir dir="dist"></mkdir>
+ <mkdir dir="dist">
+ </mkdir>
<copy todir="dist">
- <fileset dir="${defaulttargetdir}"></fileset>
+ <fileset dir="${defaulttargetdir}">
+ </fileset>
</copy>
</target>
-
<target name="test" description="o Run the test cases" if="test.failure"
depends="internal-test">
- <fail message="There were test failures."></fail>
+ <fail message="There were test failures.">
+ </fail>
</target>
<target name="internal-test" depends="compile-tests">
-
- <mkdir dir="${testreportdir}"></mkdir>
- <junit dir="./" failureproperty="test.failure" printSummary="yes" fork="true"
haltonerror="true">
-
- <sysproperty key="basedir" value="."></sysproperty>
- <formatter type="xml"></formatter>
- <formatter usefile="false" type="plain"></formatter>
- <classpath>
- <fileset dir="lib">
- <include name="*.jar"></include>
- </fileset>
- <pathelement path="${testclassesdir}"></pathelement>
- <pathelement path="${classesdir}"></pathelement>
- </classpath>
- <batchtest todir="${testreportdir}">
- <fileset dir="src/test">
-
- <include name="**/Test*.java"></include>
-
-
-
-
-
- </fileset>
- </batchtest>
- </junit>
-
+ <mkdir dir="${testreportdir}">
+ </mkdir>
+ <junit dir="./" failureproperty="test.failure" printSummary="yes" fork="true"
haltonerror="true">
+ <sysproperty key="basedir" value=".">
+ </sysproperty>
+ <formatter type="xml">
+ </formatter>
+ <formatter usefile="false" type="plain">
+ </formatter>
+ <classpath>
+ <fileset dir="lib">
+ <include name="*.jar">
+ </include>
+ </fileset>
+ <pathelement path="${testclassesdir}">
+ </pathelement>
+ <pathelement path="${classesdir}">
+ </pathelement>
+ </classpath>
+ <batchtest todir="${testreportdir}">
+ <fileset dir="src/test">
+ <include name="**/Test*.java">
+ </include>
+ </fileset>
+ </batchtest>
+ </junit>
</target>
-
<target name="compile-tests" depends="compile">
-
- <mkdir dir="${testclassesdir}"></mkdir>
- <javac destdir="${testclassesdir}" deprecation="true" debug="true"
optimize="false" excludes="**/package.html">
- <src>
- <pathelement location="src/test"></pathelement>
- </src>
- <classpath>
- <fileset dir="lib">
- <include name="*.jar"></include>
- </fileset>
- <pathelement path="${classesdir}"></pathelement>
- </classpath>
- </javac>
-
-
-
-
-
+ <mkdir dir="${testclassesdir}">
+ </mkdir>
+ <javac destdir="${testclassesdir}" deprecation="true" debug="true"
optimize="false" excludes="**/package.html">
+ <src>
+ <pathelement location="src/test">
+ </pathelement>
+ </src>
+ <classpath>
+ <fileset dir="lib">
+ <include name="*.jar">
+ </include>
+ </fileset>
+ <pathelement path="${classesdir}">
+ </pathelement>
+ </classpath>
+ </javac>
</target>
-
<target name="javadoc" description="o Generate javadoc" depends="jar">
-
-
- <mkdir dir="${javadocdir}"></mkdir>
-
-
+ <mkdir dir="${javadocdir}">
+ </mkdir>
<tstamp>
- <format pattern="2002-yyyy" property="year"></format>
+ <format pattern="2002-yyyy" property="year">
+ </format>
</tstamp>
-
- <property name="copyright" value="Copyright &copy; Apache Software
Foundation. All Rights Reserved."></property>
-
- <property name="title" value="commons-jelly-tags-html 1.0-SNAPSHOT
API"></property>
-
+ <property name="copyright" value="Copyright &copy; Apache Software
Foundation. All Rights Reserved.">
+ </property>
+ <property name="title" value="commons-jelly-tags-html 1.0-SNAPSHOT API">
+ </property>
<javadoc use="true" private="true" destdir="${javadocdir}" author="true"
version="true" sourcepath="src/java"
packagenames="org.apache.commons.jelly.tags.html.*">
<classpath>
<fileset dir="lib">
- <include name="*.jar"></include>
+ <include name="*.jar">
+ </include>
</fileset>
- <pathelement location="target/${final.name}.jar"></pathelement>
+ <pathelement location="target/${final.name}.jar">
+ </pathelement>
</classpath>
</javadoc>
-
</target>
-
<target name="get-deps" unless="noget" depends="init">
-
-
- <get dest="lib/commons-jexl-1.0-beta-1.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jexl/jars/commons-jexl-1.0-beta-1.jar"></get>
- <get dest="lib/xml-apis-1.0.b2.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/xml-apis/jars/xml-apis-1.0.b2.jar"></get>
- <get dest="lib/commons-beanutils-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-beanutils/jars/commons-beanutils-SNAPSHOT.jar"></get>
- <get dest="lib/commons-collections-2.1.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-collections/jars/commons-collections-2.1.jar"></get>
- <get dest="lib/commons-logging-1.0.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-logging/jars/commons-logging-1.0.jar"></get>
- <get dest="lib/dom4j-1.4-dev-8.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/dom4j/jars/dom4j-1.4-dev-8.jar"></get>
- <get dest="lib/jaxp-1.2.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/jaxp/jars/jaxp-1.2.jar"></get>
- <get dest="lib/xerces-2.2.1.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/xerces/jars/xerces-2.2.1.jar"></get>
- <get dest="lib/commons-jelly-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-SNAPSHOT.jar"></get>
- <get dest="lib/nekohtml-0.7.1.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/nekohtml/jars/nekohtml-0.7.1.jar"></get>
- <get dest="lib/commons-cli-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-cli/jars/commons-cli-SNAPSHOT.jar"></get>
- <get dest="lib/commons-jelly-tags-jsl-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-tags-jsl-SNAPSHOT.jar"></get>
- <get dest="lib/commons-jelly-tags-xml-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-tags-xml-SNAPSHOT.jar"></get>
-
- <get dest="lib/junit-3.8.1.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/junit/jars/junit-3.8.1.jar"></get>
- <get dest="lib/ant-1.5.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/ant/jars/ant-1.5.jar"></get>
- <get dest="lib/ant-optional-1.5.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/ant/jars/ant-optional-1.5.jar"></get>
- </target>
-
-
-
-
-
-
-
-
-
-
+ <get dest="lib/commons-jexl-1.0-beta-1.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jexl/jars/commons-jexl-1.0-beta-1.jar">
+ </get>
+ <get dest="lib/xml-apis-1.0.b2.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/xml-apis/jars/xml-apis-1.0.b2.jar">
+ </get>
+ <get dest="lib/commons-beanutils-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-beanutils/jars/commons-beanutils-SNAPSHOT.jar">
+ </get>
+ <get dest="lib/commons-collections-2.1.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-collections/jars/commons-collections-2.1.jar">
+ </get>
+ <get dest="lib/commons-logging-1.0.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-logging/jars/commons-logging-1.0.jar">
+ </get>
+ <get dest="lib/dom4j-1.4-dev-8.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/dom4j/jars/dom4j-1.4-dev-8.jar">
+ </get>
+ <get dest="lib/xerces-2.2.1.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/xerces/jars/xerces-2.2.1.jar">
+ </get>
+ <get dest="lib/commons-jelly-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-SNAPSHOT.jar">
+ </get>
+ <get dest="lib/nekohtml-0.7.1.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/nekohtml/jars/nekohtml-0.7.1.jar">
+ </get>
+ <get dest="lib/commons-cli-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-cli/jars/commons-cli-SNAPSHOT.jar">
+ </get>
+ <get dest="lib/commons-jelly-tags-jsl-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-tags-jsl-SNAPSHOT.jar">
+ </get>
+ <get dest="lib/commons-jelly-tags-xml-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-tags-xml-SNAPSHOT.jar">
+ </get>
+ <get dest="lib/commons-jelly-tags-junit-SNAPSHOT.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-jelly/jars/commons-jelly-tags-junit-SNAPSHOT.jar">
+ </get>
+ <get dest="lib/junit-3.8.1.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/junit/jars/junit-3.8.1.jar">
+ </get>
+ <get dest="lib/ant-1.5.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/ant/jars/ant-1.5.jar">
+ </get>
+ <get dest="lib/ant-optional-1.5.jar" usetimestamp="true" ignoreerrors="true"
src="http://www.ibiblio.org/maven/ant/jars/ant-optional-1.5.jar">
+ </get>
+ </target>
<target name="install-maven">
-
-
-
- <get dest="${user.home}/maven-install-latest.jar" usetimestamp="true"
src="${maven.repo.remote}/maven/maven-install-latest.jar"></get>
-
- <unjar dest="${maven.home}" src="${user.home}/maven-install-latest.jar"></unjar>
-
- </target>
-
-</project>
-
\ No newline at end of file
+ <get dest="${user.home}/maven-install-latest.jar" usetimestamp="true"
src="${maven.repo.remote}/maven/maven-install-latest.jar">
+ </get>
+ <unjar dest="${maven.home}" src="${user.home}/maven-install-latest.jar">
+ </unjar>
+ </target>
+</project>
\ No newline at end of file
1.2 +1 -0 jakarta-commons-sandbox/jelly/jelly-tags/html/.cvsignore
Index: .cvsignore
===================================================================
RCS file: /home/cvs/jakarta-commons-sandbox/jelly/jelly-tags/html/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 5 Jan 2003 07:42:19 -0000 1.1
+++ .cvsignore 22 Jan 2003 11:21:19 -0000 1.2
@@ -1,2 +1,3 @@
target
maven.log
+lib
1.3 +9 -4
jakarta-commons-sandbox/jelly/jelly-tags/html/src/test/org/apache/commons/jelly/html/suite.jelly
Index: suite.jelly
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/jelly/jelly-tags/html/src/test/org/apache/commons/jelly/html/suite.jelly,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- suite.jelly 20 Jan 2003 07:02:10 -0000 1.2
+++ suite.jelly 22 Jan 2003 11:21:20 -0000 1.3
@@ -54,24 +54,29 @@
</test:case>
<test:case name="testInlineFromVar">
+
+ <!-- this will turn the HTML markup from XML events into text -->
<j:set var="html" encode="false">
<html>
<head>
<title>Jelly - Jelly : Java and XML based processing engine</title>
- <meta name="author" value="James Strachan"/>
+ <meta name="author" value="James Strachan"/>
<meta name="email" value="[EMAIL PROTECTED]" />
</head>
<body>
</body>
</html>
</j:set>
-
- <html:parse var="doc">${html}</html:parse>
+
+ <!-- parse the text as markup -->
+ <html:parse var="doc" text="${html}"/>
<test:assert xpath="$doc/html/head/title"/>
<j:set var="title"><x:expr select="$doc/html/head/title" /></j:set>
- <test:assertEquals expected="Jelly - Jelly : Java and XML based processing
engine"
+
+ <test:assertEquals
+ expected="Jelly - Jelly : Java and XML based processing engine"
actual="${title}" />
</test:case>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>