KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > test > aop > regression > jbaop137 > ExtenderTestCase


1 /*
2 * JBoss, Home of Professional Open Source
3 * Copyright 2005, JBoss Inc., and individual contributors as indicated
4 * by the @authors tag. See the copyright.txt in the distribution for a
5 * full listing of individual contributors.
6 *
7 * This is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU Lesser General Public License as
9 * published by the Free Software Foundation; either version 2.1 of
10 * the License, or (at your option) any later version.
11 *
12 * This software is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this software; if not, write to the Free
19 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21 */

22 package org.jboss.test.aop.regression.jbaop137;
23
24 import org.jboss.aop.InstanceAdvised;
25 import org.jboss.aop.InstanceAdvisor;
26 import org.jboss.test.aop.AOPTestWithSetup;
27
28 /**
29  *
30  * @author <a HREF="kabir.khan@jboss.com">Kabir Khan</a>
31  * @version $Revision: 45977 $
32  */

33 public class ExtenderTestCase extends AOPTestWithSetup
34 {
35
36    public static void main(String JavaDoc[] args)
37    {
38       junit.textui.TestRunner.run(ExtenderTestCase.class);
39    }
40
41    /**
42     * Constructor for ExtenderTestCase.
43     * @param arg0
44     */

45    public ExtenderTestCase(String JavaDoc arg0)
46    {
47       super(arg0);
48    }
49    
50    public void testMethod() throws Exception JavaDoc
51    {
52       Extender extender = new Extender();
53       InstanceAdvisor ia = ((InstanceAdvised)extender)._getInstanceAdvisor();
54       ia.appendInterceptor(new MyInterceptor());
55
56       MyInterceptor.method = false;
57       MyInterceptor.field = false;
58       extender.getExtender();
59       assertTrue(MyInterceptor.method);
60       assertTrue(MyInterceptor.field);
61       
62       MyInterceptor.method = false;
63       MyInterceptor.field = false;
64       extender.setExtender(6);
65       assertTrue(MyInterceptor.method);
66       assertTrue(MyInterceptor.field);
67       
68       MyInterceptor.method = false;
69       MyInterceptor.field = false;
70       extender.getBase();
71       assertTrue(MyInterceptor.method);
72       assertTrue(MyInterceptor.field);
73       
74       MyInterceptor.method = false;
75       MyInterceptor.field = false;
76       extender.setBase(5);
77       assertTrue(MyInterceptor.method);
78       assertTrue(MyInterceptor.field);
79       
80       AnExtender anextender = new AnExtender();
81       InstanceAdvisor ia2 = ((InstanceAdvised)anextender)._getInstanceAdvisor();
82       ia2.appendInterceptor(new MyInterceptor());
83
84       MyInterceptor.method = false;
85       MyInterceptor.field = false;
86       anextender.getExtender();
87       assertTrue(MyInterceptor.method);
88       assertTrue(MyInterceptor.field);
89
90       MyInterceptor.method = false;
91       MyInterceptor.field = false;
92       anextender.setExtender(5);
93       assertTrue(MyInterceptor.method);
94       assertTrue(MyInterceptor.field);
95
96       
97       MyInterceptor.method = false;
98       MyInterceptor.field = false;
99       anextender.getBase();
100       assertTrue(MyInterceptor.method);
101       assertTrue(MyInterceptor.field);
102       
103       MyInterceptor.method = false;
104       MyInterceptor.field = false;
105       anextender.setBase(6);
106       assertTrue(MyInterceptor.method);
107       assertTrue(MyInterceptor.field);
108    }
109
110 }
111
Popular Tags