KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > tirsen > nanning > attribute > ClassPropertiesHelperTest


1 package com.tirsen.nanning.attribute;
2
3 import junit.framework.TestCase;
4
5 import java.lang.reflect.Proxy JavaDoc;
6 import java.io.File JavaDoc;
7
8 public class ClassPropertiesHelperTest extends TestCase {
9     private ClassPropertiesHelper classPropertiesHelper;
10
11     protected void setUp() throws Exception JavaDoc {
12         super.setUp();
13
14         classPropertiesHelper = new ClassPropertiesHelper();
15     }
16
17     public void testLoadFieldAttribute() {
18         classPropertiesHelper.loadFieldAttribute("field", "attribute", "value");
19         assertEquals("value", classPropertiesHelper.properties.getProperty("field.field.attribute"));
20     }
21
22     public void testLoadMethodAttribute() {
23         classPropertiesHelper.loadMethodAttribute("method()", "attribute", "value");
24         assertEquals("value", classPropertiesHelper.properties.getProperty("method.method().attribute"));
25     }
26
27     public void testLoadClassAttribute() {
28         classPropertiesHelper.loadClassAttribute("attribute", "value");
29         assertEquals("value", classPropertiesHelper.properties.getProperty("class.attribute"));
30     }
31
32     void method(double[] doubles) {}
33     void method(Double JavaDoc[] doubles) {}
34     void method(int[] ints) {}
35
36     public void testMethodSignature() throws NoSuchMethodException JavaDoc {
37         assertEquals("method()", ClassPropertiesHelper.methodSignature(AttributesTest.method));
38         assertEquals("method()", ClassPropertiesHelper.methodSignature(AttributesTest.method));
39         assertEquals("method(String,String)", ClassPropertiesHelper.methodSignature(AttributesTest.argMethod));
40         assertEquals("method(String,String)", ClassPropertiesHelper.methodSignature(AttributesTest.argMethod));
41         assertEquals("method(String)", ClassPropertiesHelper.methodSignature(AttributesTest.arrayArgMethod));
42         assertEquals("method(String)", ClassPropertiesHelper.methodSignature(AttributesTest.arrayArgMethod));
43         assertEquals("method(double)", ClassPropertiesHelper.methodSignature(
44                 ClassPropertiesHelperTest.class.getDeclaredMethod("method", new Class JavaDoc[] { double[].class })));
45         assertEquals("method(Double)", ClassPropertiesHelper.methodSignature(
46                 ClassPropertiesHelperTest.class.getDeclaredMethod("method", new Class JavaDoc[] { Double JavaDoc[].class })));
47         assertEquals("method(int)", ClassPropertiesHelper.methodSignature(
48                 ClassPropertiesHelperTest.class.getDeclaredMethod("method", new Class JavaDoc[] { int[].class })));
49     }
50
51     public void testGetClassName() {
52         assertEquals(null, classPropertiesHelper.getClassName());
53         classPropertiesHelper.setClassName("Class");
54         assertEquals("Class", classPropertiesHelper.getClassName());
55     }
56
57     public void testJoinTail() {
58         String JavaDoc[] parts = "field.field.field.attribute".split("\\.");
59         assertEquals("field.attribute", ClassPropertiesHelper.joinTail(parts, 2));
60         parts = "field.field.attribute".split("\\.");
61         assertEquals("attribute", ClassPropertiesHelper.joinTail(parts, 2));
62     }
63
64     public void testClassName() {
65         assertEquals("ClassPropertiesHelperTest", ClassPropertiesHelper.className(ClassPropertiesHelperTest.class));
66     }
67
68     public void testPackageName() {
69         assertEquals("com.tirsen.nanning.attribute", ClassPropertiesHelper.packageName(ClassPropertiesHelperTest.class));
70         assertEquals("", ClassPropertiesHelper.packageName(
71                 Proxy.getProxyClass(getClass().getClassLoader(), new Class JavaDoc[0])));
72     }
73
74
75     public void testGetFileName() {
76         File JavaDoc baseDir = new File JavaDoc(".");
77         classPropertiesHelper.setPackageName("package.name");
78         classPropertiesHelper.setClassName("ClassName");
79         assertEquals(new File JavaDoc(baseDir, "package" + File.separator + "name" + File.separator + "ClassName.attributes"),
80                      classPropertiesHelper.getAttributeFile(baseDir));
81     }
82 }
83
Popular Tags