package javassist; //import javassist.bytecode.*; import javassist.*; import java.io.*; import java.net.URL; public class ClassPoolTailTest{ // killed IOD_1 and JDC_1 /* public String test1(){ ClassPoolTail cpt = new ClassPoolTail(); cpt.recordInvalidClassName("C:\\mujava\\classes\\javassist"); return cpt.toString(); } //EAM public String test2(){ DirClassPath dcp = new DirClassPath("../mujava/classes/javassist"); return dcp.find("ClassPoolTail").toString(); }*/ /* //THIS TEST IS NOT USED ANY MORE public String test3(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); return dcp.find("ClassPoolTail").toString(); }*/ //EOC_1, 2 are equivalent /* //IOD_1 public String test4(){ //ClassPathList cpl1 = null; DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); // ClassPathList cpl2 = new ClassPathList(dcp, cpl1); ClassPoolTail cpt = new ClassPoolTail(); cpt.insertClassPath(dcp); return cpt.toString(); } //JSI public String test5(){ ClassPathList cpl1 = null; DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\classes"); ClassPathList cpl2 = new ClassPathList(dcp, cpl1); ClassPathList cpl3 = new ClassPathList(dcp1, cpl2); return cpl2.next.path.toString(); } public String test6(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\classes"); return dcp.toString(); } public int test7() throws Exception{ JarDirClassPath jdcp = new JarDirClassPath("C:\\mujava"); JarDirClassPath jdcp1 = new JarDirClassPath("C:\\mujava\\testset"); return jdcp.jars.length; } public int test8() throws Exception{ JarClassPath jcp = new JarClassPath("C:\\mujava\\openjava2005.jar"); JarClassPath jcp1 = new JarClassPath("C:\\mujava\\mujava.jar"); return jcp.jarfile.size(); } public String test9() throws Exception{ JarClassPath jcp = new JarClassPath("C:\\mujava\\openjava2005.jar"); JarClassPath jcp1 = new JarClassPath("C:\\mujava\\mujava.jar"); return jcp.jarfileURL; } public String test10(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); ClassPoolTail cpt = new ClassPoolTail(); ClassPoolTail cpt1 = new ClassPoolTail(); cpt1.insertClassPath(dcp); return cpt.pathList.path.toString(); } public String test11(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); ClassPoolTail cpt = new ClassPoolTail(); cpt.insertClassPath(dcp); ClassPoolTail cpt1 = new ClassPoolTail(); cpt1.insertClassPath(dcp); cpt1.recordInvalidClassName("ClassPoolTail"); if(cpt.find("ClassPoolTail") == null) return null; else return cpt.find("ClassPoolTail").toString(); } //OAN public String test12() throws Exception{ //DirClassPath dcp = new DirClassPath("C:/mujava/classes/javassist/*"); ClassPoolTail cpt = new ClassPoolTail(); ClassPath jdcp = cpt.insertClassPath("C:/mujava/classes/javassist/*"); JarClassPath[] jars = ((JarDirClassPath)jdcp).jars; String result = ""; for(int i = 0; i < jars.length;i++) result += jars[i].jarfileURL; return result; } //OAN_3, 5 ARE equivalent public int test13() throws Exception{ //DirClassPath dcp = new DirClassPath("C:/mujava/classes/javassist/*"); ClassPoolTail cpt = new ClassPoolTail(); return cpt.readStream(new FileInputStream("c:\\mujava\\classes\\javassist\\bytecode\\CodeIterator.class")).length; } public int test14() throws Exception{ ClassPoolTail cpt = new ClassPoolTail(); BufferedInputStream fin = new BufferedInputStream(new FileInputStream("c:\\mujava\\classes\\javassist\\bytecode\\CodeIterator.class")); BufferedOutputStream fout = new BufferedOutputStream(new FileOutputStream ("c:\\mujava\\fout.txt")); DataOutputStream dos = new DataOutputStream(fout); cpt.copyStream(new DataInputStream(fin),dos); return dos.size(); } //PRV public String test15(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); ClassPoolTail cpt = new ClassPoolTail(); cpt.insertClassPath(dcp); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\testset\\javassist"); cpt.appendClassPath(dcp1); return cpt.appendClassPath(dcp1).toString(); } public String test16(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); ClassPoolTail cpt = new ClassPoolTail(); cpt.insertClassPath(dcp); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\testset\\javassist"); cpt.insertClassPath(dcp1); cpt.removeClassPath(dcp); return cpt.pathList.path.toString(); } public String test17(){ DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); ClassPoolTail cpt = new ClassPoolTail(); cpt.insertClassPath(dcp); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\testset\\javassist"); DirClassPath dcp2 = new DirClassPath("C:\\mujava"); cpt.insertClassPath(dcp1); cpt.insertClassPath(dcp2); cpt.removeClassPath(dcp); return cpt.pathList.path.toString(); } public String test18() throws Exception{ ClassPoolTail cpt = new ClassPoolTail(); DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist\\bytecode"); cpt.insertClassPath(dcp); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\testset\\javassist"); //DirClassPath dcp2 = new DirClassPath("C:\\mujava"); cpt.insertClassPath(dcp1); //cpt.insertClassPath(dcp2); //cpt.removeClassPath(dcp); cpt.openClassfile("CodeIterator.class"); return cpt.pathList.path.toString(); }*/ public String test19() throws Exception{ /* BufferedInputStream fin = new BufferedInputStream(new FileInputStream("c:\\mujava\\classes\\javassist\\bytecode\\CodeIterator.class")); BufferedOutputStream fout = new BufferedOutputStream(new FileOutputStream ("c:\\mujava\\fout.txt")); DataOutputStream dos = new DataOutputStream(fout); DataInputStream dis = new DataInputStream(fin);*/ ClassPoolTail cpt = new ClassPoolTail(); DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist\\bytecode"); cpt.insertClassPath(dcp); DirClassPath dcp1 = new DirClassPath("C:\\mujava\\testset\\javassist"); //DirClassPath dcp2 = new DirClassPath("C:\\mujava"); cpt.insertClassPath(dcp1); //cpt.insertClassPath(dcp2); //cpt.removeClassPath(dcp); cpt.find("CodeIterator.class"); return cpt.pathList.path.toString(); } /* public static void main(String[] args) throws Exception{ // JarDirClassPath jdcp = new JarDirClassPath("C:\\mujava"); // System.out.println(jdcp.jars.length); /* DirClassPath dcp = new DirClassPath("C:\\mujava\\classes\\javassist"); ClassPoolTail cpt = new ClassPoolTail(); ClassPoolTail cpt1 = new ClassPoolTail(); cpt1.insertClassPath(dcp); cpt1.recordInvalidClassName("ClassPoolTail"); System.out.println(cpt1.packages.get("ClassPoolTail")); System.out.println(cpt1.pathList.path); //System.out.println(cpt.find("ClassPoolTail").toString()); System.out.println(cpt1.find("ClassPoolTail")); DirClassPath dcp = new DirClassPath("C:\\mujava"); JarDirClassPath jdcp = new JarDirClassPath("C:\\mujava"); ClassPathList cpl2 = null; cpl2 = new ClassPathList(dcp, cpl2); if(cpl2 != null) System.out.println("dir: " + cpl2.path ); System.out.println("jardir: " + dcp); System.out.println("evaluate1: " + (cpl2.path == dcp)); System.out.println("evaluate2: " + (cpl2.path.equals(dcp))); ClassPoolTail cpt = new ClassPoolTail(); */ /* ClassPoolTail cpt = new ClassPoolTail(); BufferedInputStream fin = new BufferedInputStream(new FileInputStream("c:\\mujava\\classes\\javassist\\bytecode\\CodeIterator.class")); BufferedOutputStream fout = new BufferedOutputStream(new FileOutputStream ("c:\\mujava\\fout.txt")); DataOutputStream dos = new DataOutputStream(fout); cpt.copyStream(new DataInputStream(fin),dos); //byte[] b ; //fos.write(b); System.out.println( dos.size()); }*/ }