Browse Source

Add test cases for class fileset to pick up new dependency types

PR: 13273
Obtained from: Jesse


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@273677 13f79535-47bb-0310-9956-ffa450edef68
master
Conor MacNeill 22 years ago
parent
commit
35eaa950b8
3 changed files with 37 additions and 0 deletions
  1. +4
    -0
      src/etc/testcases/taskdefs/optional/depend/depend.xml
  2. +6
    -0
      src/etc/testcases/taskdefs/optional/depend/src1/E.java
  3. +27
    -0
      src/testcases/org/apache/tools/ant/types/optional/depend/ClassFileSetTest.java

+ 4
- 0
src/etc/testcases/taskdefs/optional/depend/depend.xml View File

@@ -97,6 +97,10 @@
</jar> </jar>
</target> </target>
<target name="testmethodparam" depends="src1setup, compile">
<classfileset id="result" dir="${classes.dir}" rootclass="E"/>
</target>
<target name="testinner" depends="src2setup, compile"> <target name="testinner" depends="src2setup, compile">
<sleep seconds="3"/> <sleep seconds="3"/>
<delete file="${tempsrc.dir}/B.java"/> <delete file="${tempsrc.dir}/B.java"/>


+ 6
- 0
src/etc/testcases/taskdefs/optional/depend/src1/E.java View File

@@ -0,0 +1,6 @@
public class E {
E() {
System.out.println(A.class);
}
}


+ 27
- 0
src/testcases/org/apache/tools/ant/types/optional/depend/ClassFileSetTest.java View File

@@ -158,4 +158,31 @@ public class ClassFileSetTest extends BuildFileTest {
public void testByReference() { public void testByReference() {
executeTarget("testbyreference"); executeTarget("testbyreference");
} }
/**
* Test that classes included in a method "System.out.println(MyClass.class)" are included.
*/
public void testMethodParam() {
Project project = getProject();
executeTarget("testmethodparam");
FileSet resultFileSet = (FileSet)project.getReference(RESULT_FILESET);
DirectoryScanner scanner = resultFileSet.getDirectoryScanner(project);
String[] scannedFiles = scanner.getIncludedFiles();
Hashtable files = new Hashtable();
for (int i = 0; i < scannedFiles.length; ++i) {
files.put(scannedFiles[i], scannedFiles[i]);
}
assertEquals("Classfileset did not pick up expected number of "
+ "class files", 5, files.size());
assertTrue("Result did not contain A.class",
files.containsKey("A.class"));
assertTrue("Result did not contain B.class",
files.containsKey("B.class"));
assertTrue("Result did not contain C.class",
files.containsKey("C.class"));
assertTrue("Result did not contain D.class",
files.containsKey("D.class"));
assertTrue("Result did not contain E.class",
files.containsKey("E.class"));
}
} }

Loading…
Cancel
Save