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.annotation; 9 10 import org.codehaus.aspectwerkz.reflect.ClassInfo; 11 import org.codehaus.aspectwerkz.reflect.MethodInfo; 12 import org.codehaus.aspectwerkz.reflect.impl.asm.AsmClassInfo; 13 import org.codehaus.aspectwerkz.annotation.Annotations; 14 import org.codehaus.aspectwerkz.annotation.AnnotationInfo; 15 import org.codehaus.aspectwerkz.annotation.instrumentation.asm.AsmAnnotations; 16 import junit.framework.TestCase; 17 18 /*** 19 * @author <a href="mailto:alex AT gnilux DOT com">Alexandre Vasseur</a> 20 */ 21 public class AnnotationLoadingTest extends TestCase { 22 23 public void testAnnotationLoadingWithClassRef() throws Throwable { 24 System.out.println("START"); 25 ClassInfo klass = AsmClassInfo.getClassInfo("test.annotation.AnnotationLoadingTarget", AnnotationLoadingTest.class.getClassLoader()); 26 MethodInfo m = klass.getMethods()[0]; 27 AnnotationInfo annInfo = (AnnotationInfo) m.getAnnotations().get(0); 28 29 System.out.println("DONE"); 30 System.out.println(annInfo.getAnnotation()); 31 AnnotationParserTest.Complex c = ((AnnotationParserTest.Complex)annInfo.getAnnotation()); 32 System.out.println(c.klass().getName()); 33 System.out.println(c.toString()); 34 System.out.println(c.klass2()[0]); 35 } 36 37 public static void main(String[] args) { 38 junit.textui.TestRunner.run(suite()); 39 } 40 41 public static junit.framework.Test suite() { 42 return new junit.framework.TestSuite(AnnotationLoadingTest.class); 43 } 44 45 }