KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > celtix > tools > common > ToolWrapperGeneratorTest


1 package org.objectweb.celtix.tools.common;
2
3
4
5
6 public class ToolWrapperGeneratorTest extends ToolTestBase {
7     
8     private final ToolWrapperGenerator generator = new ToolWrapperGenerator(ToolDummy.class.getName());
9     
10
11     public void testGeneratorUsingDefaultClassLoader() {
12         ToolWrapperGenerator g = new ToolWrapperGenerator(ToolDummy.class.getName());
13         assertNotNull(g);
14     }
15     
16     
17     public void testGeneratorDelegatesToExternalClass() {
18     
19         generator.generate();
20         assertTrue("wrapper generator must delegate to tool class", ToolDummy.mainInvoked);
21     }
22     
23     public void testGeneratorPassesAllArgumentsToExternalMain() {
24         String JavaDoc[] expectedArgs = {"-b", "foo", "-keep"};
25         
26         ToolConfig config = new ToolConfig(expectedArgs);
27         
28         generator.setConfiguration(config);
29         generator.generate();
30     
31         String JavaDoc[] actualArgs = ToolDummy.getArguments();
32         
33         assertEquals(expectedArgs.length, actualArgs.length);
34         for (int i = 0; i < actualArgs.length; i++) {
35             assertEquals(expectedArgs[i], actualArgs[i]);
36         }
37     }
38     
39     
40     static final class ToolDummy {
41         
42         static boolean mainInvoked;
43         private static String JavaDoc[] arguments;
44         
45         private ToolDummy() {
46             //complete
47
}
48         
49         public static void main(String JavaDoc[] args) {
50             ToolDummy.arguments = args;
51             mainInvoked = true;
52         }
53         
54         public static boolean mainInvoked() {
55             return mainInvoked;
56         }
57         
58         public static String JavaDoc[] getArguments() {
59             return arguments;
60         }
61     }
62     
63     
64 }
65
66
Popular Tags