1
2
3
4
5
6
7
8 package org.codehaus.metaclass.introspector;
9
10 import junit.framework.TestCase;
11 import org.codehaus.metaclass.model.ClassDescriptor;
12 import org.jmock.Mock;
13 import org.jmock.C;
14 import org.jmock.InvocationMatcher;
15
16 /***
17 * @author Peter Donald
18 * @version $Revision: 1.3 $ $Date: 2003/12/09 07:51:26 $
19 */
20 public class WrapperMetaClassAccessorTestCase
21 extends TestCase
22 {
23 public void testNullAccessorPassedToCtor()
24 throws Exception
25 {
26 try
27 {
28 new WrapperMetaClassAccessor( null );
29 }
30 catch( final NullPointerException npe )
31 {
32 assertEquals( "npe.getMessage()", "accessor", npe.getMessage() );
33 return;
34 }
35 fail( "Expected to fail due to null Accessor passed into Ctor" );
36 }
37
38 public void testWrapperMetaClassAccessor()
39 throws Exception
40 {
41 final Mock mock = new Mock( MetaClassAccessor.class );
42 final String classname = "X";
43 final ClassLoader classLoader = getClass().getClassLoader();
44 final InvocationMatcher matcher =
45 C.args( C.eq( classname ), C.eq( classLoader ), C.IS_NULL );
46 mock.expectAndReturn( "getClassDescriptor", matcher, null );
47
48 final MetaClassAccessor accessor = (MetaClassAccessor)mock.proxy();
49
50 final WrapperMetaClassAccessor wrapper = new WrapperMetaClassAccessor(
51 accessor );
52 final ClassDescriptor result =
53 wrapper.getClassDescriptor( classname, classLoader, null );
54 assertEquals( "result", null, result );
55
56 mock.verify();
57 }
58 }