package kalang.test;

import java.util.Arrays;
import kalang.AstNotFoundException;
import kalang.core.ObjectType;
import kalang.core.MethodDescriptor;
import kalang.core.ClassType;
import kalang.core.Type;
import kalang.core.Types;
import org.junit.Test;
import static org.junit.Assert.*;

/**
 *
 * @author Kason Yang
 */
public class ParameterizedTypeTest {
    
    @Test
    public void test() throws AstNotFoundException{
        //TODO optimize
        ClassType pt = Types.getClassType(Types.getClassType("java.util.LinkedList").getClassNode(),new Type[]{Types.getIntClassType()});
        ObjectType supType = pt.getSuperType();
        assertTrue(supType instanceof ClassType);        
//        MethodDescriptor[] mds = supType.getMethodDescriptors(null, true);
//        for(int i=0;i<mds.length;i++){
//            System.out.println(mds[i]);
//        }
        //System.out.print(Arrays.toString(mds));
    }
    
}

@@ -13,17 +13,19 @@
 ng.test;
-%0A
+%0D%0A%0D
 %0Aimport 
@@ -41,16 +41,17 @@
 .Arrays;
+%0D
 %0Aimport 
@@ -78,16 +78,17 @@
 ception;
+%0D
 %0Aimport 
@@ -106,24 +106,25 @@
 .ObjectType;
+%0D
 %0Aimport kala
@@ -148,16 +148,17 @@
 criptor;
+%0D
 %0Aimport 
@@ -175,24 +175,25 @@
 e.ClassType;
+%0D
 %0Aimport kala
@@ -205,16 +205,17 @@
 re.Type;
+%0D
 %0Aimport 
@@ -232,16 +232,17 @@
 e.Types;
+%0D
 %0Aimport 
@@ -256,16 +256,17 @@
 it.Test;
+%0D
 %0Aimport 
@@ -295,16 +295,20 @@
 t.*;
-%0A
+%0D%0A%0D
 %0A/**
+%0D
 %0A *
+%0D
 %0A * 
@@ -329,12 +329,14 @@
 Yang
+%0D
 %0A */
+%0D
 %0Apub
@@ -368,21 +368,23 @@
 peTest %7B
+%0D
 %0A    
+%0D
 %0A    @Te
@@ -385,16 +385,17 @@
    @Test
+%0D
 %0A    pub
@@ -438,16 +438,17 @@
 ception%7B
+%0D
 %0A       
@@ -463,16 +463,17 @@
 optimize
+%0D
 %0A       
@@ -602,16 +602,17 @@
 ype()%7D);
+%0D
 %0A       
@@ -651,16 +651,17 @@
 rType();
+%0D
 %0A       
@@ -710,27 +710,124 @@
         
-%0A//
+%0D%0A        assertEquals(%22java.util.AbstractSequentialList%3Cjava.lang.Integer%3E%22, supType.toString());%0D%0A
         
 MethodDe
@@ -818,16 +818,18 @@
         
+//
 MethodDe
@@ -888,105 +888,16 @@
 true
-);%0A//        for(int i=0;i%3Cmds.length;i++)%7B%0A//            System.out.println(mds%5Bi%5D);%0A//        %7D
+,true);%0D
 %0A   
@@ -946,18 +946,22 @@
 s));
+%0D
 %0A    %7D
+%0D
 %0A    
+%0D
 %0A%7D
+%0D
 %0A

add test case