public final class org.testng.internal.ClassHelper
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.testng.internal.ClassHelper
super_class: java.lang.Object
{
private static final java.lang.String JUNIT_TESTRUNNER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.testng.junit.JUnitTestRunner"
private static final java.lang.String JUNIT_4_TESTRUNNER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.testng.junit.JUnit4TestRunner"
private static final java.util.List<java.lang.ClassLoader> classLoaders;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/ClassLoader;>;
private static final java.lang.String CANNOT_INSTANTIATE_CLASS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Cannot instantiate class "
private static final java.lang.String CLASS_HELPER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String SKIP_CALLER_CLS_LOADER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "skip.caller.clsLoader"
private static int lastGoodRootIndex;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putstatic org.testng.internal.ClassHelper.classLoaders:Ljava/util/List;
1: ldc Lorg/testng/internal/ClassHelper;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
putstatic org.testng.internal.ClassHelper.CLASS_HELPER:Ljava/lang/String;
2: iconst_m1
putstatic org.testng.internal.ClassHelper.lastGoodRootIndex:I
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/testng/internal/ClassHelper;
public static void addClassLoader(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.testng.internal.ClassHelper.classLoaders:Ljava/util/List;
aload 0
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 loader Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
loader final
public static <T> T newInstance(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
start local 1 3: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Cannot instantiate class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 clazz Ljava/lang/Class<TT;>;
3 4 1 e Ljava/lang/Throwable;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalAccessException
0 1 2 Class java.lang.InstantiationException
0 1 2 Class java.lang.ExceptionInInitializerError
0 1 2 Class java.lang.SecurityException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
clazz
public static <T> T newInstanceOrNull(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 1
start local 1 1: aload 1
iconst_0
anewarray java.lang.Object
invokestatic org.testng.internal.ClassHelper.newInstance:(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
2: areturn
end local 1 3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 1
start local 1 4: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Cannot instantiate class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 5: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 clazz Ljava/lang/Class<TT;>;
1 3 1 constructor Ljava/lang/reflect/Constructor<TT;>;
4 5 1 e Ljava/lang/Throwable;
Exception table:
from to target type
0 2 3 Class java.lang.ExceptionInInitializerError
0 2 3 Class java.lang.SecurityException
0 2 5 Class java.lang.NoSuchMethodException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
clazz
public static <T> T newInstance(java.lang.reflect.Constructor<T>, []);
descriptor: (Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
astore 2
start local 2 3: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Cannot instantiate class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.reflect.Constructor.getDeclaringClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 constructor Ljava/lang/reflect/Constructor<TT;>;
0 4 1 parameters [Ljava/lang/Object;
3 4 2 e Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
0 1 2 Class java.lang.InstantiationException
0 1 2 Class java.lang.IllegalAccessException
0 1 2 Class java.lang.reflect.InvocationTargetException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/Constructor<TT;>;[Ljava/lang/Object;)TT;
MethodParameters:
Name Flags
constructor
parameters
public static java.lang.Class<?> forName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
astore 1
start local 1 1: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 1
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: StackMap locals: java.util.List java.lang.ClassLoader
StackMap stack:
aload 1
getstatic org.testng.internal.ClassHelper.classLoaders:Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
5: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 14
StackMap locals: java.lang.String java.util.List java.lang.ClassLoader top java.util.Iterator
StackMap stack:
6: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.ClassLoader
astore 3
start local 3 7: aload 3
ifnonnull 9
8: goto 14
9: StackMap locals: java.lang.String java.util.List java.lang.ClassLoader java.lang.ClassLoader java.util.Iterator
StackMap stack:
aload 3
aload 0
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
10: areturn
11: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
astore 5
start local 5 12: getstatic org.testng.internal.ClassHelper.classLoaders:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 14
13: aload 0
aload 5
invokestatic org.testng.internal.ClassHelper.logClassNotFoundError:(Ljava/lang/String;Ljava/lang/Exception;)V
end local 5 end local 3 14: StackMap locals: java.lang.String java.util.List java.lang.ClassLoader top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
15: ldc "skip.caller.clsLoader"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
ifeq 17
16: aconst_null
areturn
17: StackMap locals: java.lang.String java.util.List java.lang.ClassLoader
StackMap stack:
aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
18: areturn
19: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
astore 3
start local 3 20: aload 0
aload 3
invokestatic org.testng.internal.ClassHelper.logClassNotFoundError:(Ljava/lang/String;Ljava/lang/Exception;)V
21: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 className Ljava/lang/String;
1 22 1 allClassLoaders Ljava/util/List<Ljava/lang/ClassLoader;>;
2 22 2 contextClassLoader Ljava/lang/ClassLoader;
7 14 3 classLoader Ljava/lang/ClassLoader;
12 14 5 ex Ljava/lang/ClassNotFoundException;
20 22 3 cnfe Ljava/lang/ClassNotFoundException;
Exception table:
from to target type
9 10 11 Class java.lang.ClassNotFoundException
17 18 19 Class java.lang.ClassNotFoundException
Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
className final
private static void logClassNotFoundError(java.lang.String, java.lang.Exception);
descriptor: (Ljava/lang/String;Ljava/lang/Exception;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.testng.internal.ClassHelper.CLASS_HELPER:Ljava/lang/String;
iconst_2
new java.lang.StringBuilder
dup
ldc "Could not instantiate "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc " : Class doesn't exist ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
2: invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 className Ljava/lang/String;
0 4 1 ex Ljava/lang/Exception;
MethodParameters:
Name Flags
className
ex
public static java.util.List<org.testng.internal.ConstructorOrMethod> findDeclaredFactoryMethods(java.lang.Class<?>, org.testng.internal.annotations.IAnnotationFinder);
descriptor: (Ljava/lang/Class;Lorg/testng/internal/annotations/IAnnotationFinder;)Ljava/util/List;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=9, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 0
invokestatic org.testng.internal.ClassHelper.getAvailableMethods:(Ljava/lang/Class;)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 8
StackMap locals: java.lang.Class org.testng.internal.annotations.IAnnotationFinder java.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
astore 3
start local 3 3: aload 1
aload 3
ldc Lorg/testng/annotations/IFactoryAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/reflect/Method;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IFactoryAnnotation
astore 5
start local 5 4: aload 5
ifnull 8
5: new org.testng.internal.ConstructorOrMethod
dup
aload 3
invokespecial org.testng.internal.ConstructorOrMethod.<init>:(Ljava/lang/reflect/Method;)V
astore 6
start local 6 6: aload 6
aload 5
invokeinterface org.testng.annotations.IFactoryAnnotation.getEnabled:()Z
invokevirtual org.testng.internal.ConstructorOrMethod.setEnabled:(Z)V
7: aload 2
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 end local 5 end local 3 8: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: aload 0
invokevirtual java.lang.Class.getDeclaredConstructors:()[Ljava/lang/reflect/Constructor;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 17
StackMap locals: java.lang.Class org.testng.internal.annotations.IAnnotationFinder java.util.List top int int java.lang.reflect.Constructor[]
StackMap stack:
10: aload 6
iload 4
aaload
astore 3
start local 3 11: aload 1
aload 3
ldc Lorg/testng/annotations/IFactoryAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/reflect/Constructor;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IFactoryAnnotation
astore 7
start local 7 12: aload 7
ifnull 16
13: new org.testng.internal.ConstructorOrMethod
dup
aload 3
invokespecial org.testng.internal.ConstructorOrMethod.<init>:(Ljava/lang/reflect/Constructor;)V
astore 8
start local 8 14: aload 8
aload 7
invokeinterface org.testng.annotations.IFactoryAnnotation.getEnabled:()Z
invokevirtual org.testng.internal.ConstructorOrMethod.setEnabled:(Z)V
15: aload 2
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 3 16: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
17: iload 4
iload 5
if_icmplt 10
18: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 cls Ljava/lang/Class<*>;
0 19 1 finder Lorg/testng/internal/annotations/IAnnotationFinder;
1 19 2 result Ljava/util/List<Lorg/testng/internal/ConstructorOrMethod;>;
3 8 3 method Ljava/lang/reflect/Method;
4 8 5 f Lorg/testng/annotations/IFactoryAnnotation;
6 8 6 factory Lorg/testng/internal/ConstructorOrMethod;
11 16 3 constructor Ljava/lang/reflect/Constructor;
12 16 7 f Lorg/testng/annotations/IFactoryAnnotation;
14 16 8 factory Lorg/testng/internal/ConstructorOrMethod;
Signature: (Ljava/lang/Class<*>;Lorg/testng/internal/annotations/IAnnotationFinder;)Ljava/util/List<Lorg/testng/internal/ConstructorOrMethod;>;
MethodParameters:
Name Flags
cls
finder
public static java.util.Set<java.lang.reflect.Method> getAvailableMethods(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
astore 1
start local 1 1: aload 0
invokestatic org.testng.internal.reflect.ReflectionHelper.getLocalMethods:(Ljava/lang/Class;)[Ljava/lang/reflect/Method;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 5
StackMap locals: java.lang.Class java.util.Map top int int java.lang.reflect.Method[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 1
aload 2
invokestatic org.testng.internal.ClassHelper.appendMethod:(Ljava/util/Map;Ljava/lang/reflect/Method;)V
end local 2 4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 4
if_icmplt 2
6: aload 0
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 2
start local 2 7: aload 2
ifnull 20
8: goto 19
9: StackMap locals: java.lang.Class java.util.Map java.lang.Class
StackMap stack:
aload 0
aload 2
aload 1
invokestatic org.testng.internal.ClassHelper.extractMethods:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/Map;)Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
astore 3
start local 3 10: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals: java.lang.Class java.util.Map java.lang.Class java.util.Set top java.util.Iterator
StackMap stack:
11: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 12: aload 1
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 6
start local 6 13: aload 6
ifnonnull 16
14: aload 1
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.Set
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
15: goto 17
16: StackMap locals: java.lang.Class java.util.Map java.lang.Class java.util.Set java.util.Map$Entry java.util.Iterator java.util.Set
StackMap stack:
aload 6
aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.Collection
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 6 end local 4 17: StackMap locals: java.lang.Class java.util.Map java.lang.Class java.util.Set top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
18: aload 2
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 2
end local 3 19: StackMap locals: java.lang.Class java.util.Map java.lang.Class
StackMap stack:
ldc Ljava/lang/Object;
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 9
20: StackMap locals:
StackMap stack:
invokestatic org.testng.collections.Sets.newHashSet:()Ljava/util/Set;
astore 3
start local 3 21: aload 1
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
goto 24
StackMap locals: java.lang.Class java.util.Map java.lang.Class java.util.Set top java.util.Iterator
StackMap stack:
22: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Set
astore 4
start local 4 23: aload 3
aload 4
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 4 24: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
25: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 clazz Ljava/lang/Class<*>;
1 26 1 methods Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
3 4 2 declaredMethod Ljava/lang/reflect/Method;
7 26 2 parent Ljava/lang/Class<*>;
10 19 3 extractedMethods Ljava/util/Set<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;>;
12 17 4 extractedMethod Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
13 17 6 m Ljava/util/Set<Ljava/lang/reflect/Method;>;
21 26 3 returnValue Ljava/util/Set<Ljava/lang/reflect/Method;>;
23 24 4 each Ljava/util/Set<Ljava/lang/reflect/Method;>;
Signature: (Ljava/lang/Class<*>;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
MethodParameters:
Name Flags
clazz
public static org.testng.junit.IJUnitTestRunner createTestRunner(org.testng.TestRunner);
descriptor: (Lorg/testng/TestRunner;)Lorg/testng/junit/IJUnitTestRunner;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: ldc "org.junit.Test"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
pop
2: ldc "org.testng.junit.JUnit4TestRunner"
invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
start local 2 3: aload 2
ifnull 18
4: aload 2
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.testng.junit.IJUnitTestRunner
astore 1
5: aload 1
aload 0
invokeinterface org.testng.junit.IJUnitTestRunner.setTestResultNotifier:(Lorg/testng/internal/ITestResultNotifier;)V
end local 2 6: goto 18
StackMap locals: org.testng.TestRunner org.testng.junit.IJUnitTestRunner
StackMap stack: java.lang.Throwable
7: pop
8: getstatic org.testng.internal.ClassHelper.CLASS_HELPER:Ljava/lang/String;
iconst_2
ldc "JUnit 4 was not found on the classpath"
invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
9: ldc "junit.framework.Test"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
pop
10: ldc "org.testng.junit.JUnitTestRunner"
invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
start local 2 11: aload 2
ifnull 18
12: aload 2
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.testng.junit.IJUnitTestRunner
astore 1
13: aload 1
aload 0
invokeinterface org.testng.junit.IJUnitTestRunner.setTestResultNotifier:(Lorg/testng/internal/ITestResultNotifier;)V
end local 2 14: goto 18
StackMap locals:
StackMap stack: java.lang.Exception
15: astore 2
start local 2 16: getstatic org.testng.internal.ClassHelper.CLASS_HELPER:Ljava/lang/String;
iconst_2
ldc "JUnit 3 was not found on the classpath"
invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
17: new org.testng.TestNGException
dup
ldc "Cannot create JUnit runner"
aload 2
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 18: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 runner Lorg/testng/TestRunner;
1 19 1 tr Lorg/testng/junit/IJUnitTestRunner;
3 6 2 clazz Ljava/lang/Class<*>;
11 14 2 clazz Ljava/lang/Class<*>;
16 18 2 ex Ljava/lang/Exception;
Exception table:
from to target type
1 6 7 Class java.lang.Throwable
9 14 15 Class java.lang.Exception
MethodParameters:
Name Flags
runner
private static void appendMethod(java.util.Map<java.lang.String, java.util.Set<java.lang.reflect.Method>>, java.lang.reflect.Method);
descriptor: (Ljava/util/Map;Ljava/lang/reflect/Method;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 2
start local 2 1: aload 2
ifnonnull 4
2: invokestatic org.testng.collections.Sets.newHashSet:()Ljava/util/Set;
astore 2
3: aload 0
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: java.util.Set
StackMap stack:
aload 2
aload 1
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 methods Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
0 6 1 declaredMethod Ljava/lang/reflect/Method;
1 6 2 declaredMethods Ljava/util/Set<Ljava/lang/reflect/Method;>;
Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;Ljava/lang/reflect/Method;)V
MethodParameters:
Name Flags
methods
declaredMethod
private static java.util.Map<java.lang.String, java.util.Set<java.lang.reflect.Method>> extractMethods(java.lang.Class<?>, java.lang.Class<?>, java.util.Map<java.lang.String, java.util.Set<java.lang.reflect.Method>>);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;Ljava/util/Map;)Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=12, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
astore 3
start local 3 1: aload 1
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
astore 4
start local 4 2: aload 0
invokevirtual java.lang.Class.getPackage:()Ljava/lang/Package;
astore 5
start local 5 3: aload 1
invokevirtual java.lang.Class.getPackage:()Ljava/lang/Package;
astore 6
start local 6 4: aload 5
aload 6
invokestatic org.testng.internal.ClassHelper.isSamePackage:(Ljava/lang/Package;Ljava/lang/Package;)Z
istore 7
start local 7 5: aload 4
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 10
StackMap locals: java.lang.Class java.lang.Class java.util.Map java.util.Map java.lang.reflect.Method[] java.lang.Package java.lang.Package int top int int java.lang.reflect.Method[]
StackMap stack:
6: aload 11
iload 9
aaload
astore 8
start local 8 7: iload 7
aload 8
aload 2
invokestatic org.testng.internal.ClassHelper.canInclude:(ZLjava/lang/reflect/Method;Ljava/util/Map;)Z
ifeq 9
8: aload 3
aload 8
invokestatic org.testng.internal.ClassHelper.appendMethod:(Ljava/util/Map;Ljava/lang/reflect/Method;)V
end local 8 9: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
10: iload 9
iload 10
if_icmplt 6
11: aload 3
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 childClass Ljava/lang/Class<*>;
0 12 1 clazz Ljava/lang/Class<*>;
0 12 2 collected Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
1 12 3 methods Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
2 12 4 declaredMethods [Ljava/lang/reflect/Method;
3 12 5 childPackage Ljava/lang/Package;
4 12 6 classPackage Ljava/lang/Package;
5 12 7 isSamePackage Z
7 9 8 method Ljava/lang/reflect/Method;
Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;)Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
MethodParameters:
Name Flags
childClass
clazz
collected
private static boolean canInclude(boolean, java.lang.reflect.Method, java.util.Map<java.lang.String, java.util.Set<java.lang.reflect.Method>>);
descriptor: (ZLjava/lang/reflect/Method;Ljava/util/Map;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.reflect.Method.getModifiers:()I
istore 3
start local 3 1: iload 3
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifne 4
iload 3
invokestatic java.lang.reflect.Modifier.isProtected:(I)Z
ifne 4
2: iload 0
ifeq 3
iload 3
invokestatic java.lang.reflect.Modifier.isPrivate:(I)Z
ifeq 4
3: StackMap locals: int
StackMap stack:
iconst_0
goto 5
StackMap locals:
StackMap stack:
4: iconst_1
StackMap locals:
StackMap stack: int
5: istore 4
start local 4 6: aload 1
aload 2
invokestatic org.testng.internal.ClassHelper.isOverridden:(Ljava/lang/reflect/Method;Ljava/util/Map;)Z
ifne 7
iload 3
invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
ifne 7
iconst_1
goto 8
StackMap locals: int
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 5
start local 5 9: iload 4
ifeq 10
iload 5
ifeq 10
iconst_1
ireturn
StackMap locals: int
StackMap stack:
10: iconst_0
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 isSamePackage Z
0 11 1 method Ljava/lang/reflect/Method;
0 11 2 collected Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
1 11 3 methodModifiers I
6 11 4 visible Z
9 11 5 hasNoInheritanceTraits Z
Signature: (ZLjava/lang/reflect/Method;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;)Z
MethodParameters:
Name Flags
isSamePackage
method
collected
private static boolean isSamePackage(java.lang.Package, java.lang.Package);
descriptor: (Ljava/lang/Package;Ljava/lang/Package;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 0
ifnonnull 3
aload 1
ifnonnull 3
2: iconst_1
istore 2
3: StackMap locals: int
StackMap stack:
aload 0
ifnull 5
aload 1
ifnull 5
4: aload 0
invokevirtual java.lang.Package.getName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.Package.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
istore 2
5: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 childPackage Ljava/lang/Package;
0 6 1 classPackage Ljava/lang/Package;
1 6 2 isSamePackage Z
MethodParameters:
Name Flags
childPackage
classPackage
private static boolean isOverridden(java.lang.reflect.Method, java.util.Map<java.lang.String, java.util.Set<java.lang.reflect.Method>>);
descriptor: (Ljava/lang/reflect/Method;Ljava/util/Map;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=10, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 2
start local 2 1: aload 2
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: java.util.Set
StackMap stack:
aload 0
invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
astore 3
start local 3 4: aload 0
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
astore 4
start local 4 5: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 19
StackMap locals: java.lang.reflect.Method java.util.Map java.util.Set java.lang.Class java.lang.Class[] top java.util.Iterator
StackMap stack:
6: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
astore 5
start local 5 7: aload 5
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
astore 7
start local 7 8: aload 3
aload 5
invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 19
aload 4
arraylength
aload 7
arraylength
if_icmpne 19
9: iconst_1
istore 8
start local 8 10: iconst_0
istore 9
start local 9 11: goto 16
12: StackMap locals: java.lang.reflect.Method java.util.Map java.util.Set java.lang.Class java.lang.Class[] java.lang.reflect.Method java.util.Iterator java.lang.Class[] int int
StackMap stack:
aload 4
iload 9
aaload
aload 7
iload 9
aaload
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 15
13: iconst_0
istore 8
14: goto 17
15: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
16: iload 9
aload 4
arraylength
if_icmplt 12
end local 9 17: StackMap locals:
StackMap stack:
iload 8
ifeq 19
18: iconst_1
ireturn
end local 8 end local 7 end local 5 19: StackMap locals: java.lang.reflect.Method java.util.Map java.util.Set java.lang.Class java.lang.Class[] top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
20: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 method Ljava/lang/reflect/Method;
0 21 1 methodsByName Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;
1 21 2 collectedMethods Ljava/util/Set<Ljava/lang/reflect/Method;>;
4 21 3 methodClass Ljava/lang/Class<*>;
5 21 4 methodParams [Ljava/lang/Class;
7 19 5 m Ljava/lang/reflect/Method;
8 19 7 paramTypes [Ljava/lang/Class;
10 19 8 sameParameters Z
11 17 9 i I
Signature: (Ljava/lang/reflect/Method;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/reflect/Method;>;>;)Z
MethodParameters:
Name Flags
method
methodsByName
public static org.testng.IMethodSelector createSelector(org.testng.xml.XmlMethodSelector);
descriptor: (Lorg/testng/xml/XmlMethodSelector;)Lorg/testng/IMethodSelector;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.testng.xml.XmlMethodSelector.getClassName:()Ljava/lang/String;
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
start local 1 1: aload 1
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.testng.IMethodSelector
2: areturn
end local 1 3: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 4: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Couldn't find method selector : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual org.testng.xml.XmlMethodSelector.getClassName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 selector Lorg/testng/xml/XmlMethodSelector;
1 3 1 cls Ljava/lang/Class<*>;
4 5 1 ex Ljava/lang/Exception;
Exception table:
from to target type
0 2 3 Class java.lang.Exception
MethodParameters:
Name Flags
selector
public static createInstance(java.lang.Class<?>, java.util.Map<java.lang.Class<?>, org.testng.IClass>, org.testng.xml.XmlTest, org.testng.internal.annotations.IAnnotationFinder, org.testng.ITestObjectFactory);
descriptor: (Ljava/lang/Class;Ljava/util/Map;Lorg/testng/xml/XmlTest;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/ITestObjectFactory;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
instanceof org.testng.IObjectFactory
ifeq 4
1: aload 0
aload 1
aload 2
aload 3
2: aload 4
checkcast org.testng.IObjectFactory
3: invokestatic org.testng.internal.ClassHelper.createInstance1:(Ljava/lang/Class;Ljava/util/Map;Lorg/testng/xml/XmlTest;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/IObjectFactory;)Ljava/lang/Object;
areturn
4: StackMap locals:
StackMap stack:
aload 4
instanceof org.testng.IObjectFactory2
ifeq 6
5: aload 0
aload 4
checkcast org.testng.IObjectFactory2
invokestatic org.testng.internal.ClassHelper.createInstance2:(Ljava/lang/Class;Lorg/testng/IObjectFactory2;)Ljava/lang/Object;
areturn
6: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Unknown object factory type:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 declaringClass Ljava/lang/Class<*>;
0 7 1 classes Ljava/util/Map<Ljava/lang/Class<*>;Lorg/testng/IClass;>;
0 7 2 xmlTest Lorg/testng/xml/XmlTest;
0 7 3 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 7 4 objectFactory Lorg/testng/ITestObjectFactory;
Signature: (Ljava/lang/Class<*>;Ljava/util/Map<Ljava/lang/Class<*>;Lorg/testng/IClass;>;Lorg/testng/xml/XmlTest;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/ITestObjectFactory;)Ljava/lang/Object;
MethodParameters:
Name Flags
declaringClass
classes
xmlTest
finder
objectFactory
private static createInstance2(java.lang.Class<?>, org.testng.IObjectFactory2);
descriptor: (Ljava/lang/Class;Lorg/testng/IObjectFactory2;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokeinterface org.testng.IObjectFactory2.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 declaringClass Ljava/lang/Class<*>;
0 1 1 objectFactory Lorg/testng/IObjectFactory2;
Signature: (Ljava/lang/Class<*>;Lorg/testng/IObjectFactory2;)Ljava/lang/Object;
MethodParameters:
Name Flags
declaringClass
objectFactory
public static createInstance1(java.lang.Class<?>, java.util.Map<java.lang.Class<?>, org.testng.IClass>, org.testng.xml.XmlTest, org.testng.internal.annotations.IAnnotationFinder, org.testng.IObjectFactory);
descriptor: (Ljava/lang/Class;Ljava/util/Map;Lorg/testng/xml/XmlTest;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/IObjectFactory;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aconst_null
astore 5
start local 5 1: aload 3
aload 0
invokestatic org.testng.internal.ClassHelper.findAnnotatedConstructor:(Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 6
start local 6 2: aload 6
ifnull 15
3: aload 3
aload 6
ldc Lorg/testng/annotations/IParametersAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/reflect/Constructor;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IParametersAnnotation
astore 7
start local 7 4: aload 7
ifnull 48
5: aload 7
invokeinterface org.testng.annotations.IParametersAnnotation.getValue:()[Ljava/lang/String;
astore 8
start local 8 6: aload 6
7: ldc "@Parameters"
8: aload 3
9: aload 8
10: aload 2
invokevirtual org.testng.xml.XmlTest.getAllParameters:()Ljava/util/Map;
11: aload 2
invokevirtual org.testng.xml.XmlTest.getSuite:()Lorg/testng/xml/XmlSuite;
12: invokestatic org.testng.internal.Parameters.createInstantiationParameters:(Ljava/lang/reflect/Constructor;Ljava/lang/String;Lorg/testng/internal/annotations/IAnnotationFinder;[Ljava/lang/String;Ljava/util/Map;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
astore 9
start local 9 13: aload 4
aload 6
aload 9
invokeinterface org.testng.IObjectFactory.newInstance:(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
astore 5
end local 9 end local 8 end local 7 14: goto 48
15: StackMap locals: java.lang.Object java.lang.reflect.Constructor
StackMap stack:
iconst_0
anewarray java.lang.Class
astore 7
start local 7 16: iconst_0
anewarray java.lang.Object
astore 8
start local 8 17: aload 0
invokestatic org.testng.internal.ClassHelper.getEnclosingClass:(Ljava/lang/Class;)Ljava/lang/Class;
astore 9
start local 9 18: aload 0
invokevirtual java.lang.Class.getModifiers:()I
bipush 8
iand
ifeq 19
iconst_1
goto 20
StackMap locals: java.lang.Class[] java.lang.Object[] java.lang.Class
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: istore 10
start local 10 21: aload 9
ifnull 34
iload 10
ifne 34
22: iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 9
aastore
astore 7
23: aload 1
aload 9
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.testng.IClass
astore 11
start local 11 24: aload 11
ifnull 31
25: aload 11
iconst_0
invokeinterface org.testng.IClass.getInstances:(Z)[Ljava/lang/Object;
astore 12
start local 12 26: aload 12
ifnull 27
aload 12
arraylength
ifne 32
27: StackMap locals: int org.testng.IClass java.lang.Object[]
StackMap stack:
aload 4
aload 9
aload 7
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
iconst_0
anewarray java.lang.Object
invokeinterface org.testng.IObjectFactory.newInstance:(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
astore 13
start local 13 28: aload 11
aload 13
invokeinterface org.testng.IClass.addInstance:(Ljava/lang/Object;)V
29: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
astore 12
end local 13 30: goto 32
end local 12 31: StackMap locals:
StackMap stack:
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 9
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
aastore
astore 12
start local 12 32: StackMap locals: java.lang.Object[]
StackMap stack:
aload 12
iconst_0
aaload
astore 13
start local 13 33: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 13
aastore
astore 8
end local 13 end local 12 end local 11 34: StackMap locals:
StackMap stack:
aload 0
aload 7
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 11
start local 11 35: goto 39
end local 11 36: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
37: aload 0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 11
start local 11 38: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.testng.xml.XmlTest.getName:()Ljava/lang/String;
aastore
astore 8
39: StackMap locals: java.lang.reflect.Constructor
StackMap stack:
aload 4
aload 11
aload 8
invokeinterface org.testng.IObjectFactory.newInstance:(Ljava/lang/reflect/Constructor;[Ljava/lang/Object;)Ljava/lang/Object;
astore 5
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 40: goto 48
41: StackMap locals: java.lang.Class java.util.Map org.testng.xml.XmlTest org.testng.internal.annotations.IAnnotationFinder org.testng.IObjectFactory java.lang.Object
StackMap stack: org.testng.TestNGException
astore 6
start local 6 42: aload 6
athrow
end local 6 43: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
goto 48
44: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
start local 6 45: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "An error occurred while instantiating class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
46: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 6
47: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 6 48: StackMap locals:
StackMap stack:
aload 5
ifnonnull 52
aload 0
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifne 52
49: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "An error occurred while instantiating class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
50: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ". Check to make sure it can be accessed/instantiated."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
51: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
52: StackMap locals:
StackMap stack:
aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 53 0 declaringClass Ljava/lang/Class<*>;
0 53 1 classes Ljava/util/Map<Ljava/lang/Class<*>;Lorg/testng/IClass;>;
0 53 2 xmlTest Lorg/testng/xml/XmlTest;
0 53 3 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 53 4 objectFactory Lorg/testng/IObjectFactory;
1 53 5 result Ljava/lang/Object;
2 40 6 constructor Ljava/lang/reflect/Constructor<*>;
4 14 7 parametersAnnotation Lorg/testng/annotations/IParametersAnnotation;
6 14 8 parameterNames [Ljava/lang/String;
13 14 9 parameters [Ljava/lang/Object;
16 40 7 parameterTypes [Ljava/lang/Class;
17 40 8 parameters [Ljava/lang/Object;
18 40 9 ec Ljava/lang/Class<*>;
21 40 10 isStatic Z
24 34 11 enclosingIClass Lorg/testng/IClass;
26 31 12 enclosingInstances [Ljava/lang/Object;
32 34 12 enclosingInstances [Ljava/lang/Object;
28 30 13 o Ljava/lang/Object;
33 34 13 enclosingClassInstance Ljava/lang/Object;
35 36 11 ct Ljava/lang/reflect/Constructor<*>;
38 40 11 ct Ljava/lang/reflect/Constructor<*>;
42 43 6 ex Lorg/testng/TestNGException;
45 48 6 cause Ljava/lang/Throwable;
Exception table:
from to target type
34 35 36 Class java.lang.NoSuchMethodException
1 40 41 Class org.testng.TestNGException
1 40 43 Class java.lang.NoSuchMethodException
1 40 44 Class java.lang.Throwable
Signature: (Ljava/lang/Class<*>;Ljava/util/Map<Ljava/lang/Class<*>;Lorg/testng/IClass;>;Lorg/testng/xml/XmlTest;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/IObjectFactory;)Ljava/lang/Object;
MethodParameters:
Name Flags
declaringClass
classes
xmlTest
finder
objectFactory
private static java.lang.Class<?> getEnclosingClass(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 2
start local 2 2: aload 2
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
istore 3
start local 3 3: iload 3
iconst_m1
if_icmpeq 9
4: aload 2
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 4
start local 4 5: aload 4
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
6: goto 9
7: StackMap locals: java.lang.Class java.lang.Class java.lang.String int java.lang.String
StackMap stack: java.lang.ClassNotFoundException
astore 5
start local 5 8: ldc Lorg/testng/internal/ClassHelper;
invokestatic org.testng.log4testng.Logger.getLogger:(Ljava/lang/Class;)Lorg/testng/log4testng/Logger;
aload 5
invokevirtual java.lang.ClassNotFoundException.getMessage:()Ljava/lang/String;
aload 5
invokevirtual org.testng.log4testng.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 5 end local 4 9: StackMap locals:
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 declaringClass Ljava/lang/Class<*>;
1 10 1 result Ljava/lang/Class<*>;
2 10 2 className Ljava/lang/String;
3 10 3 index I
5 9 4 ecn Ljava/lang/String;
8 9 5 e Ljava/lang/ClassNotFoundException;
Exception table:
from to target type
5 6 7 Class java.lang.ClassNotFoundException
Signature: (Ljava/lang/Class<*>;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
declaringClass
private static java.lang.reflect.Constructor<?> findAnnotatedConstructor(org.testng.internal.annotations.IAnnotationFinder, java.lang.Class<?>);
descriptor: (Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Class.getDeclaredConstructors:()[Ljava/lang/reflect/Constructor;
astore 2
start local 2 1: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 18
StackMap locals: org.testng.internal.annotations.IAnnotationFinder java.lang.Class java.lang.reflect.Constructor[] top int int java.lang.reflect.Constructor[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 0
aload 3
ldc Lorg/testng/annotations/IParametersAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/reflect/Constructor;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IParametersAnnotation
astore 7
start local 7 4: aload 7
ifnull 14
5: aload 7
invokeinterface org.testng.annotations.IParametersAnnotation.getValue:()[Ljava/lang/String;
astore 8
start local 8 6: aload 3
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
astore 9
start local 9 7: aload 8
arraylength
aload 9
arraylength
if_icmpeq 13
8: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Parameter count mismatch: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\naccepts "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: aload 9
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
10: ldc " parameters but the @Test annotation declares "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: aload 8
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals: org.testng.internal.annotations.IAnnotationFinder java.lang.Class java.lang.reflect.Constructor[] java.lang.reflect.Constructor int int java.lang.reflect.Constructor[] org.testng.annotations.IParametersAnnotation java.lang.String[] java.lang.Class[]
StackMap stack:
aload 3
areturn
end local 9 end local 8 14: StackMap locals:
StackMap stack:
aload 0
aload 3
ldc Lorg/testng/annotations/IFactoryAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/reflect/Constructor;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IFactoryAnnotation
astore 8
start local 8 15: aload 8
ifnull 17
16: aload 3
areturn
end local 8 end local 7 end local 3 17: StackMap locals: org.testng.internal.annotations.IAnnotationFinder java.lang.Class java.lang.reflect.Constructor[] top int int java.lang.reflect.Constructor[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
iload 5
if_icmplt 2
19: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 20 1 declaringClass Ljava/lang/Class<*>;
1 20 2 constructors [Ljava/lang/reflect/Constructor;
3 17 3 result Ljava/lang/reflect/Constructor<*>;
4 17 7 parametersAnnotation Lorg/testng/annotations/IParametersAnnotation;
6 14 8 parameters [Ljava/lang/String;
7 14 9 parameterTypes [Ljava/lang/Class;
15 17 8 factoryAnnotation Lorg/testng/annotations/IFactoryAnnotation;
Signature: (Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Class<*>;)Ljava/lang/reflect/Constructor<*>;
MethodParameters:
Name Flags
finder
declaringClass
public static <T> T tryOtherConstructor(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getModifiers:()I
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 2
start local 2 3: aload 2
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "Default test name"
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
astore 1
end local 2 start local 1 4: goto 16
end local 1 5: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 6: aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
astore 3
start local 3 7: aload 3
ifnonnull 9
aload 2
invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
ifnull 9
8: aload 2
invokevirtual java.lang.Exception.getCause:()Ljava/lang/Throwable;
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
astore 3
9: StackMap locals: java.lang.Class top java.lang.Exception java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Could not create an instance of class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
10: aload 3
ifnull 11
new java.lang.StringBuilder
dup
ldc ": "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 12
StackMap locals:
StackMap stack: java.lang.StringBuilder
11: ldc ""
StackMap locals: java.lang.Class top java.lang.Exception java.lang.String
StackMap stack: java.lang.StringBuilder java.lang.String
12: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: ldc ".\nPlease make sure it has a constructor that accepts either a String or no parameter."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 15: new org.testng.TestNGException
dup
aload 4
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 start local 1 16: StackMap locals: java.lang.Class java.lang.Object
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 declaringClass Ljava/lang/Class<TT;>;
4 5 1 result TT;
16 17 1 result TT;
3 4 2 ctor Ljava/lang/reflect/Constructor<TT;>;
6 16 2 e Ljava/lang/Exception;
7 16 3 message Ljava/lang/String;
15 16 4 error Ljava/lang/String;
Exception table:
from to target type
0 1 5 Class java.lang.Exception
2 4 5 Class java.lang.Exception
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
declaringClass
public static java.lang.Class<?> fileToClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
ldc ".class"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 8
aload 0
ldc ".java"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 8
2: aload 0
ldc "class "
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 4
3: aload 0
ldc "class "
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 0
4: StackMap locals: java.lang.Class
StackMap stack:
aload 0
invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
5: aload 1
ifnonnull 7
6: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Cannot load class from file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 1
areturn
8: StackMap locals:
StackMap stack:
aload 0
ldc ".class"
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
istore 2
start local 2 9: iconst_m1
iload 2
if_icmpne 11
10: aload 0
ldc ".java"
invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
istore 2
11: StackMap locals: int
StackMap stack:
aload 0
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 3
start local 3 12: aload 3
ldc "[/\\\\]"
iconst_m1
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
astore 4
start local 4 13: iconst_m1
getstatic org.testng.internal.ClassHelper.lastGoodRootIndex:I
if_icmpeq 23
14: new java.lang.StringBuilder
dup
aload 4
getstatic org.testng.internal.ClassHelper.lastGoodRootIndex:I
aaload
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 5
start local 5 15: getstatic org.testng.internal.ClassHelper.lastGoodRootIndex:I
iconst_1
iadd
istore 6
start local 6 16: goto 19
17: StackMap locals: java.lang.String java.lang.Class int java.lang.String java.lang.String[] java.lang.StringBuilder int
StackMap stack:
aload 5
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
iload 6
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: iinc 6 1
StackMap locals:
StackMap stack:
19: iload 6
aload 4
arraylength
if_icmplt 17
end local 6 20: aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
21: aload 1
ifnull 23
22: aload 1
areturn
end local 5 23: StackMap locals:
StackMap stack:
ldc ""
astore 5
start local 5 24: aload 4
arraylength
iconst_1
isub
istore 6
start local 6 25: goto 35
26: StackMap locals: java.lang.String int
StackMap stack:
aload 5
invokevirtual java.lang.String.length:()I
ifne 29
27: aload 4
iload 6
aaload
astore 5
28: goto 30
29: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 4
iload 6
aaload
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
30: StackMap locals:
StackMap stack:
aload 5
invokestatic org.testng.internal.ClassHelper.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
31: aload 1
ifnull 34
32: iload 6
putstatic org.testng.internal.ClassHelper.lastGoodRootIndex:I
33: goto 36
34: StackMap locals:
StackMap stack:
iinc 6 -1
StackMap locals:
StackMap stack:
35: iload 6
ifge 26
end local 6 36: StackMap locals:
StackMap stack:
aload 1
ifnonnull 38
37: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Cannot load class from file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
38: StackMap locals:
StackMap stack:
aload 1
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 file Ljava/lang/String;
1 39 1 result Ljava/lang/Class<*>;
9 39 2 classIndex I
12 39 3 shortFileName Ljava/lang/String;
13 39 4 segments [Ljava/lang/String;
15 23 5 className Ljava/lang/StringBuilder;
16 20 6 i I
24 39 5 className Ljava/lang/String;
25 36 6 i I
Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
file
public static org.testng.xml.XmlClass[] findClassesInSameTest(java.lang.Class<?>, org.testng.xml.XmlSuite);
descriptor: (Ljava/lang/Class;Lorg/testng/xml/XmlSuite;)[Lorg/testng/xml/XmlClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: invokestatic org.testng.collections.Sets.newHashSet:()Ljava/util/Set;
astore 2
start local 2 1: aload 1
invokevirtual org.testng.xml.XmlSuite.getTests:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: java.lang.Class org.testng.xml.XmlSuite java.util.Collection top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.testng.xml.XmlTest
astore 3
start local 3 3: aload 2
aload 0
aload 3
invokestatic org.testng.internal.ClassHelper.findClassesInSameTest:(Ljava/lang/Class;Lorg/testng/xml/XmlTest;)Ljava/util/Collection;
invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 2
aload 2
invokeinterface java.util.Collection.size:()I
anewarray org.testng.xml.XmlClass
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.testng.xml.XmlClass[]
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 cls Ljava/lang/Class<*>;
0 6 1 suite Lorg/testng/xml/XmlSuite;
1 6 2 vResult Ljava/util/Collection<Lorg/testng/xml/XmlClass;>;
3 4 3 test Lorg/testng/xml/XmlTest;
Signature: (Ljava/lang/Class<*>;Lorg/testng/xml/XmlSuite;)[Lorg/testng/xml/XmlClass;
MethodParameters:
Name Flags
cls
suite
private static java.util.Collection<org.testng.xml.XmlClass> findClassesInSameTest(java.lang.Class<?>, org.testng.xml.XmlTest);
descriptor: (Ljava/lang/Class;Lorg/testng/xml/XmlTest;)Ljava/util/Collection;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: invokestatic org.testng.collections.Sets.newHashSet:()Ljava/util/Set;
astore 2
start local 2 1: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 3
start local 3 2: aload 1
invokevirtual org.testng.xml.XmlTest.getXmlClasses:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 7
StackMap locals: java.lang.Class org.testng.xml.XmlTest java.util.Collection java.lang.String top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.testng.xml.XmlClass
astore 4
start local 4 4: aload 4
invokevirtual org.testng.xml.XmlClass.getName:()Ljava/lang/String;
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
5: aload 2
aload 1
invokevirtual org.testng.xml.XmlTest.getXmlClasses:()Ljava/util/List;
invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
pop
6: goto 8
end local 4 7: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
8: StackMap locals: java.lang.Class org.testng.xml.XmlTest java.util.Collection java.lang.String
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 cls Ljava/lang/Class<*>;
0 9 1 xmlTest Lorg/testng/xml/XmlTest;
1 9 2 vResult Ljava/util/Collection<Lorg/testng/xml/XmlClass;>;
2 9 3 className Ljava/lang/String;
4 7 4 testClass Lorg/testng/xml/XmlClass;
Signature: (Ljava/lang/Class<*>;Lorg/testng/xml/XmlTest;)Ljava/util/Collection<Lorg/testng/xml/XmlClass;>;
MethodParameters:
Name Flags
cls
xmlTest
}
SourceFile: "ClassHelper.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map