diff options
author | Michael Bien <[email protected]> | 2009-10-18 19:17:30 +0200 |
---|---|---|
committer | Michael Bien <[email protected]> | 2009-10-18 19:17:30 +0200 |
commit | 79e0951cfdb5fb2371df23edeaf7f8957b0ee3f5 (patch) | |
tree | 7399468d4078c959d99346ba6f90934111e8d031 /nbproject | |
parent | 23597f78174c318febf35337338890c3665a13c7 (diff) |
added first JUnit test: GlueGenTest.java. (dependencies: junit-4.5.jar, antlr-2.7.7.jar in <gluegenroot>/lib)
Test tests the basic GlueGen lifecycle: generate->compile java->compile native->load lib->call methods
integrated test compile,run and debug targets into NetBeans IDE.
Diffstat (limited to 'nbproject')
-rw-r--r-- | nbproject/ide-file-targets.xml | 61 | ||||
-rwxr-xr-x | nbproject/project.xml | 106 |
2 files changed, 164 insertions, 3 deletions
diff --git a/nbproject/ide-file-targets.xml b/nbproject/ide-file-targets.xml new file mode 100644 index 0000000..ede0f96 --- /dev/null +++ b/nbproject/ide-file-targets.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project basedir=".." name="GlueGen-IDE"> + + <property name="ant.script" value="make/build.xml"/> + + <!-- edit the following targets according to your needs --> + <!-- (more info: http://www.netbeans.org/kb/articles/freeform-config.html--> + + <target name="compile-selected-files-in-junit"> + <fail unless="files">Must set property 'files'</fail> + + <mkdir dir="build/test/build/classes"/> + + <javac destdir="build/test/build/classes" includes="${files}" source="1.5" srcdir="test/junit" debug="true" debuglevel="lines,vars,source"> + <classpath path="build/test/build/classes:build/classes:build/test/gensrc/java:lib/antlr-2.7.7.jar:lib/junit-4.5.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}"/> + </javac> + </target> + + <target name="run-selected-file-in-junit"> + <fail unless="run.class">Must set property 'run.class'</fail> + + <java classname="${run.class}" failonerror="true" fork="true"> + <classpath> + <path path="build/test/build/classes:build/classes:lib/antlr-2.7.7.jar:lib/junit-4.5.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}"/> + </classpath> + </java> + </target> + + <target name="test-selected-file-in-junit"> + <fail unless="run.class">Must set property 'run.class'</fail> + + <junit forkmode="once" showoutput="true" fork="true" failureproperty="tests.failed" errorproperty="tests.failed"> + <test name="${run.class}"> + </test> + <classpath> + <path path="build/test/build/classes:build/test/gensrc/java:build/classes:lib/antlr-2.7.7.jar:lib/junit-4.5.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}"/> + </classpath> + <formatter usefile="false" type="brief"/> + <formatter type="xml"/> + </junit> + </target> + + <target name="debug-selected-file-in-junit"> + <fail unless="debug.class">Must set property 'debug.class'</fail> + + <path id="cp"> + <path path="build/test/build/classes:build/classes:lib/antlr-2.7.7.jar:lib/junit-4.5.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}"/> + </path> + + <nbjpdastart addressproperty="jpda.address" name="GlueGen" transport="dt_socket"> + <classpath refid="cp"/> + </nbjpdastart> + + <java classname="${debug.class}" fork="true"> + <classpath refid="cp"/> + <jvmarg value="-Xdebug"/> + <jvmarg value="-Xrunjdwp:transport=dt_socket,address=${jpda.address}"/> + </java> + </target> + +</project> diff --git a/nbproject/project.xml b/nbproject/project.xml index 29c70f9..a4c00fa 100755 --- a/nbproject/project.xml +++ b/nbproject/project.xml @@ -29,6 +29,18 @@ <location>build/gensrc/java</location> <encoding>UTF-8</encoding> </source-folder> + <source-folder> + <label>test/junit</label> + <type>java</type> + <location>test/junit</location> + <encoding>UTF-8</encoding> + </source-folder> + <source-folder> + <label>build/test</label> + <type>java</type> + <location>build/test</location> + <encoding>UTF-8</encoding> + </source-folder> </folders> <ide-actions> <action name="build"> @@ -44,10 +56,74 @@ <target>clean</target> <target>all</target> </action> + <action name="run.single"> + <script>nbproject/ide-file-targets.xml</script> + <target>run-selected-file-in-junit</target> + <context> + <property>run.class</property> + <folder>test/junit</folder> + <pattern>\.java$</pattern> + <format>java-name</format> + <arity> + <one-file-only/> + </arity> + </context> + </action> + <action name="test.single"> + <script>nbproject/ide-file-targets.xml</script> + <target>test-selected-file-in-junit</target> + <context> + <property>run.class</property> + <folder>test/junit</folder> + <pattern>\.java$</pattern> + <format>java-name</format> + <arity> + <one-file-only/> + </arity> + </context> + </action> + <action name="compile.single"> + <script>nbproject/ide-file-targets.xml</script> + <target>compile-selected-files-in-junit</target> + <context> + <property>files</property> + <folder>test/junit</folder> + <pattern>\.java$</pattern> + <format>relative-path</format> + <arity> + <separated-files>,</separated-files> + </arity> + </context> + </action> + <action name="debug.single"> + <script>nbproject/ide-file-targets.xml</script> + <target>debug-selected-file-in-junit</target> + <context> + <property>debug.class</property> + <folder>test/junit</folder> + <pattern>\.java$</pattern> + <format>java-name</format> + <arity> + <one-file-only/> + </arity> + </context> + </action> </ide-actions> <export> <type>folder</type> - <location>bin</location> + <location>build/classes</location> + <script>${ant.script}</script> + <build-target>all</build-target> + </export> + <export> + <type>folder</type> + <location>build/classes</location> + <script>${ant.script}</script> + <build-target>all</build-target> + </export> + <export> + <type>folder</type> + <location>build/classes</location> <script>${ant.script}</script> <build-target>all</build-target> </export> @@ -61,6 +137,14 @@ <label>build/gensrc/java</label> <location>build/gensrc/java</location> </source-folder> + <source-folder style="packages"> + <label>test/junit</label> + <location>test/junit</location> + </source-folder> + <source-folder style="packages"> + <label>build/test</label> + <location>build/test</location> + </source-folder> <source-file> <location>${ant.script}</location> </source-file> @@ -73,12 +157,28 @@ </view> <subprojects/> </general-data> - <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/1"> + <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/2"> <compilation-unit> <package-root>src/java</package-root> + <classpath mode="compile">build/classes:lib/antlr-2.7.7.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}</classpath> + <built-to>build/classes</built-to> + <source-level>1.5</source-level> + </compilation-unit> + <compilation-unit> <package-root>build/gensrc/java</package-root> <classpath mode="compile">build/classes:lib/antlr-2.7.7.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}</classpath> - <built-to>bin</built-to> + <built-to>build/classes</built-to> + <source-level>1.5</source-level> + </compilation-unit> + <compilation-unit> + <package-root>test/junit</package-root> + <unit-tests/> + <classpath mode="compile">build/classes:build/test/gensrc/java:lib/antlr-2.7.7.jar:${jdk.home}/lib/tools.jar:${ant.core.lib}:lib/junit-4.5.jar</classpath> + <built-to>build/classes</built-to> + <source-level>1.5</source-level> + </compilation-unit> + <compilation-unit> + <package-root>build/test</package-root> <source-level>1.5</source-level> </compilation-unit> </java-data> |