KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > CallerSideAdviceTest


1 /**************************************************************************************
2  * Copyright (c) Jonas BonŽr, Alexandre Vasseur. All rights reserved. *
3  * http://aspectwerkz.codehaus.org *
4  * ---------------------------------------------------------------------------------- *
5  * The software in this package is published under the terms of the LGPL license *
6  * a copy of which has been included with this distribution in the license.txt file. *
7  **************************************************************************************/

8 package test;
9
10 import junit.framework.TestCase;
11
12 /**
13  * @author <a HREF="mailto:jboner@codehaus.org">Jonas BonŽr </a>
14  */

15 public class CallerSideAdviceTest extends TestCase {
16     private static String JavaDoc s_logString = "";
17
18     public CallerSideAdviceTest(String JavaDoc name) {
19         super(name);
20     }
21
22     public void testAroundAdvicedMemberMethod() {
23         s_logString = "";
24         try {
25             CallerSideTestHelper helper = new CallerSideTestHelper();
26             helper.invokeMemberMethodAround("a", "b");
27             helper.invokeMemberMethodAround("a", "b", "c");
28             assertEquals("before after before after ", s_logString);
29         } catch (Exception JavaDoc e) {
30             e.printStackTrace();
31             fail();
32         }
33
34         // AW-163: same JIT JP reused
35
s_logString = "";
36         try {
37             CallerSideTestHelper helper = new CallerSideTestHelper();
38             helper.invokeMemberMethodAround("a", "b", "c");
39             assertEquals("before after ", s_logString);
40         } catch (Exception JavaDoc e) {
41             e.printStackTrace();
42             fail();
43         }
44     }
45
46     public void testAroundAdvicedStaticMethod() {
47         s_logString = "";
48         try {
49             CallerSideTestHelper helper = new CallerSideTestHelper();
50             helper.invokeStaticMethodAround();
51             assertEquals("before after ", s_logString);
52         } catch (Exception JavaDoc e) {
53             fail();
54         }
55     }
56
57     public void testAroundAdvicedStaticMethodPrimitiveType() {
58         s_logString = "";
59         try {
60             CallerSideTestHelper helper = new CallerSideTestHelper();
61             int res = helper.invokeStaticMethodAroundPrimitiveType();
62             assertEquals("before after ", s_logString);
63             assertEquals(res, 3);
64         } catch (Exception JavaDoc e) {
65             fail();
66         }
67     }
68
69     public void testAroundAdvicedMemberMethodPrimitiveType() {
70         s_logString = "";
71         try {
72             CallerSideTestHelper helper = new CallerSideTestHelper();
73             int res = helper.invokeMemberMethodAroundPrimitiveType();
74             assertEquals("before after ", s_logString);
75             assertEquals(res, 2);
76         } catch (Exception JavaDoc e) {
77             fail();
78         }
79     }
80
81     public void testAroundAdvicedMemberMethodVoidType() {
82         s_logString = "";
83         try {
84             CallerSideTestHelper helper = new CallerSideTestHelper();
85             helper.invokeMemberMethodAroundVoidType();
86             assertEquals("before after ", s_logString);
87         } catch (Exception JavaDoc e) {
88             fail();
89         }
90     }
91
92     public void testPreAdvicedMemberMethod() {
93         s_logString = "";
94         try {
95             CallerSideTestHelper helper = new CallerSideTestHelper();
96             helper.invokeMemberMethodPre();
97             assertEquals("pre1 pre2 ", s_logString);
98         } catch (Exception JavaDoc e) {
99             fail();
100         }
101     }
102
103     public void testPostAdvicedMemberMethod() {
104         s_logString = "";
105         try {
106             CallerSideTestHelper helper = new CallerSideTestHelper();
107             helper.invokeMemberMethodPost();
108             assertEquals("post2 post1 ", s_logString);
109         } catch (Exception JavaDoc e) {
110             fail();
111         }
112     }
113
114     public void testPrePostAdvicedMemberMethod() {
115         s_logString = "";
116         try {
117             CallerSideTestHelper helper = new CallerSideTestHelper();
118             helper.invokeMemberMethodPrePost();
119             assertEquals("pre1 pre2 post2 post1 ", s_logString);
120         } catch (Exception JavaDoc e) {
121             fail();
122         }
123     }
124
125     public void testPreAdvicedStaticMethod() {
126         s_logString = "";
127         try {
128             CallerSideTestHelper.invokeStaticMethodPre();
129             assertEquals("pre1 pre2 ", s_logString);
130         } catch (Exception JavaDoc e) {
131             fail();
132         }
133     }
134
135     public void testPostAdvicedStaticMethod() {
136         s_logString = "";
137         try {
138             CallerSideTestHelper.invokeStaticMethodPost();
139             assertEquals("post2 post1 ", s_logString);
140         } catch (Exception JavaDoc e) {
141             fail();
142         }
143     }
144
145     public void testPrePostAdvicedStaticMethod() {
146         s_logString = "";
147         try {
148             CallerSideTestHelper.invokeStaticMethodPrePost();
149             assertEquals("pre1 pre2 post2 post1 ", s_logString);
150         } catch (Exception JavaDoc e) {
151             fail();
152         }
153     }
154
155     public static void main(String JavaDoc[] args) {
156         junit.textui.TestRunner.run(suite());
157     }
158
159     public static junit.framework.Test suite() {
160         return new junit.framework.TestSuite(CallerSideAdviceTest.class);
161     }
162
163     // ==== methods to test ====
164
public static void log(final String JavaDoc wasHere) {
165         s_logString += wasHere;
166     }
167
168     public void setFieldPreAdviced() {
169     }
170 }
Popular Tags