public class org.testng.internal.Parameters
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.testng.internal.Parameters
super_class: java.lang.Object
{
public static final java.lang.String NULL_VALUE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "null"
private static java.util.List<java.lang.Class<? extends java.lang.annotation.Annotation>> annotationList;
descriptor: Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/List<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
private static java.util.Map<java.lang.String, java.util.List<java.lang.Class<?>>> mapping;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Ljava/lang/Class<*>;>;>;
private static final java.util.List<java.lang.Class<?>> INJECTED_TYPES;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/Class<*>;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=2, args_size=0
0: bipush 11
anewarray java.lang.Class
dup
iconst_0
1: ldc Lorg/testng/annotations/BeforeSuite;
aastore
dup
iconst_1
2: ldc Lorg/testng/annotations/AfterSuite;
aastore
dup
iconst_2
3: ldc Lorg/testng/annotations/BeforeTest;
aastore
dup
iconst_3
4: ldc Lorg/testng/annotations/AfterTest;
aastore
dup
iconst_4
5: ldc Lorg/testng/annotations/BeforeClass;
aastore
dup
iconst_5
6: ldc Lorg/testng/annotations/AfterClass;
aastore
dup
bipush 6
7: ldc Lorg/testng/annotations/BeforeGroups;
aastore
dup
bipush 7
8: ldc Lorg/testng/annotations/AfterGroups;
aastore
dup
bipush 8
9: ldc Lorg/testng/annotations/BeforeMethod;
aastore
dup
bipush 9
10: ldc Lorg/testng/annotations/AfterMethod;
aastore
dup
bipush 10
11: ldc Lorg/testng/annotations/Factory;
aastore
12: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
putstatic org.testng.internal.Parameters.annotationList:Ljava/util/List;
13: invokestatic org.testng.collections.Maps.newHashMap:()Ljava/util/Map;
putstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
14: iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/testng/ITestContext;
aastore
dup
iconst_1
ldc Lorg/testng/xml/XmlTest;
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 0
start local 0 15: iconst_5
anewarray java.lang.Class
dup
iconst_0
16: ldc Lorg/testng/ITestContext;
aastore
dup
iconst_1
ldc Lorg/testng/xml/XmlTest;
aastore
dup
iconst_2
ldc Ljava/lang/reflect/Method;
aastore
dup
iconst_3
ldc [Ljava/lang/Object;
aastore
dup
iconst_4
ldc Lorg/testng/ITestResult;
aastore
17: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 1
start local 1 18: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/BeforeSuite;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
19: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/AfterSuite;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
20: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/BeforeTest;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
21: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/AfterTest;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
22: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/BeforeGroups;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
23: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/AfterGroups;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
24: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/BeforeClass;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
25: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/AfterClass;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
26: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/BeforeMethod;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
27: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/AfterMethod;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 1
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
28: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
29: ldc Lorg/testng/annotations/Test;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Lorg/testng/ITestContext;
aastore
dup
iconst_1
ldc Lorg/testng/xml/XmlTest;
aastore
dup
iconst_2
ldc Ljava/lang/reflect/Method;
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
30: invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
31: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
ldc Lorg/testng/annotations/Factory;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 1 end local 0 32: iconst_5
anewarray java.lang.Class
dup
iconst_0
33: ldc Lorg/testng/ITestContext;
aastore
dup
iconst_1
ldc Lorg/testng/ITestResult;
aastore
dup
iconst_2
ldc Lorg/testng/xml/XmlTest;
aastore
dup
iconst_3
ldc Ljava/lang/reflect/Method;
aastore
dup
iconst_4
ldc [Ljava/lang/Object;
aastore
34: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
putstatic org.testng.internal.Parameters.INJECTED_TYPES:Ljava/util/List;
35: return
LocalVariableTable:
Start End Slot Name Signature
15 32 0 ctxTest Ljava/util/List<Ljava/lang/Class<*>;>;
18 32 1 beforeAfterMethod Ljava/util/List<Ljava/lang/Class<*>;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/testng/internal/Parameters;
public static [] createInstantiationParameters(java.lang.reflect.Constructor, java.lang.String, org.testng.internal.annotations.IAnnotationFinder, java.lang.String[], java.util.Map<java.lang.String, java.lang.String>, org.testng.xml.XmlSuite);
descriptor: (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;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
1: aload 0
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
2: aload 2
aload 0
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findOptionalValues:(Ljava/lang/reflect/Constructor;)[Ljava/lang/String;
3: aload 1
4: aload 3
5: new org.testng.internal.Parameters$MethodParameters
dup
aload 4
invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
invokespecial org.testng.internal.Parameters$MethodParameters.<init>:(Ljava/util/Map;Ljava/util/Map;)V
6: aload 5
7: invokestatic org.testng.internal.Parameters.createParametersForConstructor:(Ljava/lang/reflect/Constructor;[Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
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 8 0 ctor Ljava/lang/reflect/Constructor;
0 8 1 methodAnnotation Ljava/lang/String;
0 8 2 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 8 3 parameterNames [Ljava/lang/String;
0 8 4 params Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 8 5 xmlSuite Lorg/testng/xml/XmlSuite;
Signature: (Ljava/lang/reflect/Constructor;Ljava/lang/String;Lorg/testng/internal/annotations/IAnnotationFinder;[Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
MethodParameters:
Name Flags
ctor
methodAnnotation
finder
parameterNames
params
xmlSuite
public static [] createConfigurationParameters(java.lang.reflect.Method, java.util.Map<java.lang.String, java.lang.String>, [], org.testng.ITestNGMethod, org.testng.internal.annotations.IAnnotationFinder, org.testng.xml.XmlSuite, org.testng.ITestContext, org.testng.ITestResult);
descriptor: (Ljava/lang/reflect/Method;Ljava/util/Map;[Ljava/lang/Object;Lorg/testng/ITestNGMethod;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/xml/XmlSuite;Lorg/testng/ITestContext;Lorg/testng/ITestResult;)[Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=12, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 3
ifnull 1
aload 3
invokeinterface org.testng.ITestNGMethod.getConstructorOrMethod:()Lorg/testng/internal/ConstructorOrMethod;
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
2: StackMap locals:
StackMap stack: java.lang.reflect.Method
astore 8
start local 8 3: aload 3
ifnull 5
4: aload 3
aload 6
invokeinterface org.testng.ITestContext.getCurrentXmlTest:()Lorg/testng/xml/XmlTest;
invokeinterface org.testng.ITestNGMethod.findMethodParameters:(Lorg/testng/xml/XmlTest;)Ljava/util/Map;
goto 6
5: StackMap locals: java.lang.reflect.Method
StackMap stack:
invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
6: StackMap locals:
StackMap stack: java.util.Map
astore 9
start local 9 7: aload 0
invokestatic org.testng.internal.Parameters.retrieveConfigAnnotation:(Ljava/lang/reflect/Method;)Ljava/lang/Class;
astore 10
start local 10 8: aload 10
ifnonnull 9
ldc ""
goto 10
StackMap locals: java.util.Map java.lang.Class
StackMap stack:
9: aload 10
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
10: astore 11
start local 11 11: new org.testng.internal.ConstructorOrMethod
dup
aload 0
invokespecial org.testng.internal.ConstructorOrMethod.<init>:(Ljava/lang/reflect/Method;)V
12: new org.testng.internal.Parameters$MethodParameters
dup
13: aload 1
aload 9
aload 2
aload 8
aload 6
aload 7
14: invokespecial org.testng.internal.Parameters$MethodParameters.<init>:(Ljava/util/Map;Ljava/util/Map;[Ljava/lang/Object;Ljava/lang/reflect/Method;Lorg/testng/ITestContext;Lorg/testng/ITestResult;)V
15: aload 4
16: aload 5
17: aload 11
18: invokestatic org.testng.internal.Parameters.createParameters:(Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/xml/XmlSuite;Ljava/lang/String;)[Ljava/lang/Object;
areturn
end local 11 end local 10 end local 9 end local 8 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 19 0 m Ljava/lang/reflect/Method;
0 19 1 params Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 19 2 parameterValues [Ljava/lang/Object;
0 19 3 currentTestMethod Lorg/testng/ITestNGMethod;
0 19 4 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 19 5 xmlSuite Lorg/testng/xml/XmlSuite;
0 19 6 ctx Lorg/testng/ITestContext;
0 19 7 testResult Lorg/testng/ITestResult;
3 19 8 currentTestMeth Ljava/lang/reflect/Method;
7 19 9 methodParams Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
8 19 10 annotation Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
11 19 11 name Ljava/lang/String;
Signature: (Ljava/lang/reflect/Method;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;[Ljava/lang/Object;Lorg/testng/ITestNGMethod;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/xml/XmlSuite;Lorg/testng/ITestContext;Lorg/testng/ITestResult;)[Ljava/lang/Object;
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
javax.annotation.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
3:
javax.annotation.Nullable()
4:
5:
6:
7:
MethodParameters:
Name Flags
m
params
parameterValues
currentTestMethod
finder
xmlSuite
ctx
testResult
private static java.lang.Class<? extends java.lang.annotation.Annotation> retrieveConfigAnnotation(java.lang.reflect.Method);
descriptor: (Ljava/lang/reflect/Method;)Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.testng.internal.Parameters.annotationList:Ljava/util/List;
1: invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
2: aload 0
invokedynamic test(Ljava/lang/reflect/Method;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/testng/internal/Parameters.lambda$0(Ljava/lang/reflect/Method;Ljava/lang/Class;)Z (6)
(Ljava/lang/Class;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
3: invokeinterface java.util.stream.Stream.findAny:()Ljava/util/Optional;
4: aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Class
5: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 m Ljava/lang/reflect/Method;
Signature: (Ljava/lang/reflect/Method;)Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
MethodParameters:
Name Flags
m
private static [] createParametersForConstructor(java.lang.reflect.Constructor, java.lang.Class<?>[], java.lang.String[], java.lang.String, java.lang.String[], org.testng.internal.Parameters$MethodParameters, org.testng.xml.XmlSuite);
descriptor: (Ljava/lang/reflect/Constructor;[Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=10, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 1
arraylength
ifne 2
1: iconst_0
anewarray java.lang.Object
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.reflect.Constructor.getName:()Ljava/lang/String;
aload 1
aload 3
aload 4
invokestatic org.testng.internal.Parameters.checkParameterTypes:(Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/String;)V
3: invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
astore 7
start local 7 4: aload 3
invokestatic org.testng.internal.Parameters.canInject:(Ljava/lang/String;)Z
ifeq 16
5: aload 0
invokestatic org.testng.internal.reflect.ReflectionRecipes.getConstructorParameters:(Ljava/lang/reflect/Constructor;)[Lorg/testng/internal/reflect/Parameter;
astore 8
start local 8 6: aload 8
7: getstatic org.testng.internal.reflect.InjectableParameter$Assistant.ALL_INJECTS:Ljava/util/Set;
8: iconst_0
anewarray java.lang.Object
9: aload 0
10: aload 5
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
11: aload 5
getfield org.testng.internal.Parameters$MethodParameters.testResult:Lorg/testng/ITestResult;
12: invokestatic org.testng.internal.reflect.ReflectionRecipes.inject:([Lorg/testng/internal/reflect/Parameter;Ljava/util/Set;[Ljava/lang/Object;Ljava/lang/reflect/Constructor;Lorg/testng/ITestContext;Lorg/testng/ITestResult;)[Ljava/lang/Object;
13: astore 9
start local 9 14: aload 9
ifnull 16
15: aload 7
aload 9
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
end local 9 end local 8 16: StackMap locals: java.util.List
StackMap stack:
aload 0
invokevirtual java.lang.reflect.Constructor.getName:()Ljava/lang/String;
17: ldc "constructor"
18: aload 3
19: aload 1
20: aload 2
21: aload 4
22: aload 5
23: aload 6
24: invokestatic org.testng.internal.Parameters.createParams:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)Ljava/util/List;
25: astore 8
start local 8 26: aload 7
aload 8
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
27: aload 7
iconst_0
anewarray java.lang.Object
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
areturn
end local 8 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 28 0 constructor Ljava/lang/reflect/Constructor;
0 28 1 parameterTypes [Ljava/lang/Class;
0 28 2 optionalValues [Ljava/lang/String;
0 28 3 methodAnnotation Ljava/lang/String;
0 28 4 parameterNames [Ljava/lang/String;
0 28 5 params Lorg/testng/internal/Parameters$MethodParameters;
0 28 6 xmlSuite Lorg/testng/xml/XmlSuite;
4 28 7 vResult Ljava/util/List<Ljava/lang/Object;>;
6 16 8 paramsArray [Lorg/testng/internal/reflect/Parameter;
14 16 9 inject [Ljava/lang/Object;
26 28 8 consParams Ljava/util/List<Ljava/lang/Object;>;
Signature: (Ljava/lang/reflect/Constructor;[Ljava/lang/Class<*>;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
MethodParameters:
Name Flags
constructor
parameterTypes
optionalValues
methodAnnotation
parameterNames
params
xmlSuite
private static java.util.List<java.lang.Object> createParams(java.lang.String, java.lang.String, java.lang.String, java.lang.Class<?>[], java.lang.String[], java.lang.String[], org.testng.internal.Parameters$MethodParameters, org.testng.xml.XmlSuite);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=12, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
astore 8
start local 8 1: aload 4
arraylength
aload 5
arraylength
if_icmpeq 6
2: aload 3
aload 4
invokestatic org.testng.internal.Parameters.filterOutInJectedTypesFromOptionalValues:([Ljava/lang/Class;[Ljava/lang/String;)Lorg/testng/internal/Parameters$FilterOutInJectedTypesResult;
3: astore 9
start local 9 4: aload 9
invokevirtual org.testng.internal.Parameters$FilterOutInJectedTypesResult.getOptionalValues:()[Ljava/lang/String;
astore 4
5: aload 9
invokevirtual org.testng.internal.Parameters$FilterOutInJectedTypesResult.getParameterTypes:()[Ljava/lang/Class;
astore 3
end local 9 6: StackMap locals: java.util.List
StackMap stack:
aload 5
arraylength
ifne 13
aload 4
arraylength
ifle 13
7: iconst_0
istore 9
start local 9 8: goto 11
9: StackMap locals: int
StackMap stack:
aload 8
aload 3
iload 9
aaload
aload 4
iload 9
aaload
ldc ""
invokestatic org.testng.internal.Parameters.convertType:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: iinc 9 1
StackMap locals:
StackMap stack:
11: iload 9
aload 3
arraylength
if_icmplt 9
end local 9 12: aload 8
areturn
13: StackMap locals:
StackMap stack:
iconst_0
istore 9
start local 9 14: goto 38
15: StackMap locals: int
StackMap stack:
aload 5
iload 9
aaload
astore 10
start local 10 16: aload 10
aload 6
getfield org.testng.internal.Parameters$MethodParameters.xmlParameters:Ljava/util/Map;
aload 10
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 11
start local 11 17: aload 11
ifnonnull 36
18: aload 4
ifnull 20
19: aload 4
iload 9
aaload
astore 11
20: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 11
ifnonnull 36
21: new org.testng.TestNGException
dup
22: new java.lang.StringBuilder
dup
ldc "Parameter '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: ldc "' is required by "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: ldc " on "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
28: ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
29: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: ldc " but has not been marked @Optional or defined\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: aload 7
invokevirtual org.testng.xml.XmlSuite.getFileName:()Ljava/lang/String;
ifnull 32
new java.lang.StringBuilder
dup
ldc "in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual org.testng.xml.XmlSuite.getFileName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 33
StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.Class[] java.lang.String[] java.lang.String[] org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite java.util.List int java.lang.String java.lang.String
StackMap stack: new 21 new 21 java.lang.StringBuilder
32: ldc ""
StackMap locals: java.lang.String java.lang.String java.lang.String java.lang.Class[] java.lang.String[] java.lang.String[] org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite java.util.List int java.lang.String java.lang.String
StackMap stack: new 21 new 21 java.lang.StringBuilder java.lang.String
33: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
34: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
35: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
36: StackMap locals:
StackMap stack:
aload 8
aload 3
iload 9
aaload
aload 11
aload 10
invokestatic org.testng.internal.Parameters.convertType:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 10 37: iinc 9 1
StackMap locals:
StackMap stack:
38: iload 9
aload 5
arraylength
if_icmplt 15
end local 9 39: aload 8
areturn
end local 8 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 40 0 name Ljava/lang/String;
0 40 1 prefix Ljava/lang/String;
0 40 2 methodAnnotation Ljava/lang/String;
0 40 3 parameterTypes [Ljava/lang/Class;
0 40 4 optionalValues [Ljava/lang/String;
0 40 5 parameterNames [Ljava/lang/String;
0 40 6 params Lorg/testng/internal/Parameters$MethodParameters;
0 40 7 xmlSuite Lorg/testng/xml/XmlSuite;
1 40 8 vResult Ljava/util/List<Ljava/lang/Object;>;
4 6 9 filterOutResult Lorg/testng/internal/Parameters$FilterOutInJectedTypesResult;
8 12 9 i I
14 39 9 i I
16 37 10 p Ljava/lang/String;
17 37 11 value Ljava/lang/String;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Class<*>;[Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)Ljava/util/List<Ljava/lang/Object;>;
MethodParameters:
Name Flags
name
prefix
methodAnnotation
parameterTypes
optionalValues
parameterNames
params
xmlSuite
static org.testng.internal.Parameters$FilterOutInJectedTypesResult filterOutInJectedTypesFromOptionalValues(java.lang.Class<?>[], java.lang.String[]);
descriptor: ([Ljava/lang/Class;[Ljava/lang/String;)Lorg/testng/internal/Parameters$FilterOutInJectedTypesResult;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokestatic org.testng.collections.Lists.newArrayList:([Ljava/lang/Object;)Ljava/util/List;
astore 2
start local 2 1: aload 1
invokestatic org.testng.collections.Lists.newArrayList:([Ljava/lang/Object;)Ljava/util/List;
astore 3
start local 3 2: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
start local 4 3: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
start local 5 4: goto 10
5: StackMap locals: java.lang.Class[] java.lang.String[] java.util.List java.util.List java.util.Iterator java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Class
astore 6
start local 6 6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
pop
7: getstatic org.testng.internal.Parameters.INJECTED_TYPES:Ljava/util/List;
aload 6
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 10
8: aload 5
invokeinterface java.util.Iterator.remove:()V
9: aload 4
invokeinterface java.util.Iterator.remove:()V
end local 6 10: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
11: new org.testng.internal.Parameters$FilterOutInJectedTypesResult
dup
12: aload 2
iconst_0
anewarray java.lang.Class
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.Class[]
aload 3
iconst_0
anewarray java.lang.String
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
13: invokespecial org.testng.internal.Parameters$FilterOutInJectedTypesResult.<init>:([Ljava/lang/Class;[Ljava/lang/String;)V
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 14 0 parameterTypes [Ljava/lang/Class;
0 14 1 optionalValues [Ljava/lang/String;
1 14 2 typeList Ljava/util/List<Ljava/lang/Class<*>;>;
2 14 3 optionalValueList Ljava/util/List<Ljava/lang/String;>;
3 14 4 typeIterator Ljava/util/Iterator<Ljava/lang/Class<*>;>;
4 14 5 optionalIterator Ljava/util/Iterator<Ljava/lang/String;>;
6 10 6 parameterType Ljava/lang/Class<*>;
Signature: ([Ljava/lang/Class<*>;[Ljava/lang/String;)Lorg/testng/internal/Parameters$FilterOutInJectedTypesResult;
MethodParameters:
Name Flags
parameterTypes
optionalValues
private static boolean areAllOptionalValuesNull(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
ifnull 1
aload 0
arraylength
ifne 2
1: StackMap locals:
StackMap stack:
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_1
istore 1
start local 1 3: aload 0
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 9
StackMap locals: java.lang.String[] int top int int java.lang.String[]
StackMap stack:
4: aload 5
iload 3
aaload
astore 2
start local 2 5: aload 2
ifnull 8
6: iconst_0
istore 1
7: goto 10
end local 2 8: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
iload 4
if_icmplt 4
10: StackMap locals: java.lang.String[] int
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 optionalValues [Ljava/lang/String;
3 11 1 isNull Z
5 8 2 optionalValue Ljava/lang/String;
MethodParameters:
Name Flags
optionalValues
private static [] createParametersForMethod(org.testng.internal.ConstructorOrMethod, java.lang.Class<?>[], java.lang.String[], java.lang.String, java.lang.String[], org.testng.internal.Parameters$MethodParameters, org.testng.xml.XmlSuite);
descriptor: (Lorg/testng/internal/ConstructorOrMethod;[Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=11, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 1
arraylength
ifne 2
1: iconst_0
anewarray java.lang.Object
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokestatic org.testng.internal.Parameters.areAllOptionalValuesNull:([Ljava/lang/String;)Z
ifeq 4
3: aload 0
invokevirtual org.testng.internal.ConstructorOrMethod.getName:()Ljava/lang/String;
aload 1
aload 3
aload 4
invokestatic org.testng.internal.Parameters.checkParameterTypes:(Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
astore 7
start local 7 5: aload 0
invokevirtual org.testng.internal.ConstructorOrMethod.getName:()Ljava/lang/String;
6: ldc "method"
7: aload 3
8: aload 1
9: aload 2
10: aload 4
11: aload 5
12: aload 6
13: invokestatic org.testng.internal.Parameters.createParams:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)Ljava/util/List;
14: astore 8
start local 8 15: aload 3
invokestatic org.testng.internal.Parameters.canInject:(Ljava/lang/String;)Z
ifeq 28
16: aload 0
invokestatic org.testng.internal.Parameters.extractParameters:(Lorg/testng/internal/ConstructorOrMethod;)[Lorg/testng/internal/reflect/Parameter;
astore 9
start local 9 17: aload 9
18: getstatic org.testng.internal.reflect.InjectableParameter$Assistant.ALL_INJECTS:Ljava/util/Set;
19: aload 8
iconst_0
anewarray java.lang.Object
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
20: aload 5
getfield org.testng.internal.Parameters$MethodParameters.currentTestMethod:Ljava/lang/reflect/Method;
21: aload 5
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
22: aload 5
getfield org.testng.internal.Parameters$MethodParameters.testResult:Lorg/testng/ITestResult;
23: invokestatic org.testng.internal.reflect.ReflectionRecipes.inject:([Lorg/testng/internal/reflect/Parameter;Ljava/util/Set;[Ljava/lang/Object;Ljava/lang/reflect/Method;Lorg/testng/ITestContext;Lorg/testng/ITestResult;)[Ljava/lang/Object;
24: astore 10
start local 10 25: aload 10
ifnull 29
26: aload 7
aload 10
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
end local 10 end local 9 27: goto 29
28: StackMap locals: java.util.List java.util.List
StackMap stack:
aload 7
aload 8
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
29: StackMap locals:
StackMap stack:
aload 7
iconst_0
anewarray java.lang.Object
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
areturn
end local 8 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 30 0 method Lorg/testng/internal/ConstructorOrMethod;
0 30 1 parameterTypes [Ljava/lang/Class;
0 30 2 optionalValues [Ljava/lang/String;
0 30 3 methodAnnotation Ljava/lang/String;
0 30 4 parameterNames [Ljava/lang/String;
0 30 5 params Lorg/testng/internal/Parameters$MethodParameters;
0 30 6 xmlSuite Lorg/testng/xml/XmlSuite;
5 30 7 vResult Ljava/util/List<Ljava/lang/Object;>;
15 30 8 consParams Ljava/util/List<Ljava/lang/Object;>;
17 27 9 paramsArray [Lorg/testng/internal/reflect/Parameter;
25 27 10 inject [Ljava/lang/Object;
Signature: (Lorg/testng/internal/ConstructorOrMethod;[Ljava/lang/Class<*>;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
MethodParameters:
Name Flags
method
parameterTypes
optionalValues
methodAnnotation
parameterNames
params
xmlSuite
private static org.testng.internal.reflect.Parameter[] (org.testng.internal.ConstructorOrMethod);
descriptor: (Lorg/testng/internal/ConstructorOrMethod;)[Lorg/testng/internal/reflect/Parameter;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
ifnull 2
1: aload 0
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
invokestatic org.testng.internal.reflect.ReflectionRecipes.getMethodParameters:(Ljava/lang/reflect/Method;)[Lorg/testng/internal/reflect/Parameter;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.testng.internal.ConstructorOrMethod.getConstructor:()Ljava/lang/reflect/Constructor;
invokestatic org.testng.internal.reflect.ReflectionRecipes.getConstructorParameters:(Ljava/lang/reflect/Constructor;)[Lorg/testng/internal/reflect/Parameter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 method Lorg/testng/internal/ConstructorOrMethod;
MethodParameters:
Name Flags
method
private static boolean canInject(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc Lorg/testng/annotations/Test;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 annotation Ljava/lang/String;
MethodParameters:
Name Flags
annotation
private static void checkParameterTypes(java.lang.String, java.lang.Class<?>[], java.lang.String, java.lang.String[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
arraylength
istore 4
start local 4 1: aload 1
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 6
StackMap locals: java.lang.String java.lang.Class[] java.lang.String java.lang.String[] int top int int java.lang.Class[]
StackMap stack:
2: aload 8
iload 6
aaload
astore 5
start local 5 3: getstatic org.testng.internal.Parameters.INJECTED_TYPES:Ljava/util/List;
aload 5
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 5
4: iinc 4 -1
end local 5 5: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
6: iload 6
iload 7
if_icmplt 2
7: aload 3
arraylength
ifne 39
8: iload 4
ifne 9
aload 2
aload 1
invokestatic org.testng.internal.Parameters.validParameters:(Ljava/lang/String;[Ljava/lang/Class;)Z
ifeq 9
iconst_0
goto 10
StackMap locals: java.lang.String java.lang.Class[] java.lang.String java.lang.String[] int
StackMap stack:
9: iconst_1
StackMap locals:
StackMap stack: int
10: istore 5
start local 5 11: iload 5
ifeq 39
12: aload 2
astore 6
start local 6 13: aload 2
ldc "@"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 15
14: new java.lang.StringBuilder
dup
ldc "@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
15: StackMap locals: int java.lang.String
StackMap stack:
getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 25
16: new java.lang.StringBuilder
dup
ldc "Can inject only one of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
17: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
invokestatic org.testng.internal.Parameters.prettyFormat:(Ljava/util/List;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
18: ldc " into a "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: ldc " annotated "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
22: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
23: astore 7
start local 7 24: goto 33
end local 7 25: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Cannot inject "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: ldc " annotated Method ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
28: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
29: ldc "] with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: aload 1
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
32: astore 7
start local 7 33: StackMap locals: java.lang.String
StackMap stack:
new org.testng.TestNGException
dup
34: new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
35: ldc ".\nFor more information on native dependency injection please refer to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
36: ldc "https://testng.org/doc/documentation-main.html#native-dependency-injection"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
37: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
38: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
end local 7 end local 6 end local 5 39: StackMap locals:
StackMap stack:
aload 3
arraylength
iload 4
if_icmpeq 52
40: new org.testng.TestNGException
dup
41: new java.lang.StringBuilder
dup
ldc "Method "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
42: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
43: ldc " requires "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
44: aload 1
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
45: ldc " parameters but "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
46: aload 3
arraylength
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
47: ldc " were supplied in the "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
48: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
49: ldc " annotation."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
50: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
51: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
52: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 53 0 methodName Ljava/lang/String;
0 53 1 parameterTypes [Ljava/lang/Class;
0 53 2 methodAnnotation Ljava/lang/String;
0 53 3 parameterNames [Ljava/lang/String;
1 53 4 totalLength I
3 5 5 parameterType Ljava/lang/Class;
11 39 5 invalid Z
13 39 6 annotation Ljava/lang/String;
24 25 7 errPrefix Ljava/lang/String;
33 39 7 errPrefix Ljava/lang/String;
Signature: (Ljava/lang/String;[Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/String;)V
MethodParameters:
Name Flags
methodName
parameterTypes
methodAnnotation
parameterNames
private static boolean validParameters(java.lang.String, java.lang.Class[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Class;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: getstatic org.testng.internal.Parameters.mapping:Ljava/util/Map;
aload 0
ldc "@"
ldc ""
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 2
start local 2 1: aload 2
ifnonnull 3
2: iconst_0
ireturn
3: StackMap locals: java.util.List
StackMap stack:
aload 1
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 8
StackMap locals: java.lang.String java.lang.Class[] java.util.List top int int java.lang.Class[]
StackMap stack:
4: aload 6
iload 4
aaload
astore 3
start local 3 5: aload 2
aload 3
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 7
6: iconst_0
ireturn
end local 3 7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 5
if_icmplt 4
9: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 methodAnnotation Ljava/lang/String;
0 10 1 parameterTypes [Ljava/lang/Class;
1 10 2 localMapping Ljava/util/List<Ljava/lang/Class<*>;>;
5 7 3 parameterType Ljava/lang/Class<*>;
MethodParameters:
Name Flags
methodAnnotation
parameterTypes
private static java.lang.String prettyFormat(java.util.List<java.lang.Class<?>>);
descriptor: (Ljava/util/List;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "<"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 0
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 4
2: aload 1
aload 0
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
3: goto 11
4: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 0
invokeinterface java.util.List.size:()I
istore 2
start local 2 5: iconst_0
istore 3
start local 3 6: goto 9
7: StackMap locals: int int
StackMap stack:
aload 1
aload 0
iload 3
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Class
invokevirtual java.lang.Class.getSimpleName:()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;
pop
8: iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
iload 2
iconst_1
isub
if_icmplt 7
end local 3 10: aload 1
aload 0
iload 2
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.Class
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 2 11: StackMap locals:
StackMap stack:
aload 1
ldc ">"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 classes Ljava/util/List<Ljava/lang/Class<*>;>;
1 13 1 builder Ljava/lang/StringBuilder;
5 11 2 length I
6 10 3 i I
Signature: (Ljava/util/List<Ljava/lang/Class<*>;>;)Ljava/lang/String;
MethodParameters:
Name Flags
classes
public static <T> T convertType(java.lang.Class<T>, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
ldc "null"
aload 1
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 6
2: ldc "Parameters"
3: iconst_2
4: new java.lang.StringBuilder
dup
ldc "Attempt to pass null value to primitive type parameter '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
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;
5: invokestatic org.testng.internal.Utils.log:(Ljava/lang/String;ILjava/lang/String;)V
6: StackMap locals:
StackMap stack:
aconst_null
areturn
7: StackMap locals:
StackMap stack:
aload 0
ldc Ljava/lang/String;
if_acmpne 10
8: aload 1
9: areturn
10: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
if_acmpeq 11
aload 0
ldc Ljava/lang/Integer;
if_acmpne 13
11: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Integer.valueOf:(Ljava/lang/String;)Ljava/lang/Integer;
12: areturn
13: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
if_acmpeq 14
aload 0
ldc Ljava/lang/Boolean;
if_acmpne 16
14: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
15: areturn
16: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
if_acmpeq 17
aload 0
ldc Ljava/lang/Byte;
if_acmpne 19
17: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Byte.valueOf:(Ljava/lang/String;)Ljava/lang/Byte;
18: areturn
19: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
if_acmpeq 20
aload 0
ldc Ljava/lang/Character;
if_acmpne 22
20: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
21: areturn
22: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
if_acmpeq 23
aload 0
ldc Ljava/lang/Double;
if_acmpne 25
23: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Double.valueOf:(Ljava/lang/String;)Ljava/lang/Double;
24: areturn
25: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
if_acmpeq 26
aload 0
ldc Ljava/lang/Float;
if_acmpne 28
26: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Float.valueOf:(Ljava/lang/String;)Ljava/lang/Float;
27: areturn
28: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
if_acmpeq 29
aload 0
ldc Ljava/lang/Long;
if_acmpne 31
29: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Long.valueOf:(Ljava/lang/String;)Ljava/lang/Long;
30: areturn
31: StackMap locals:
StackMap stack:
aload 0
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
if_acmpeq 32
aload 0
ldc Ljava/lang/Short;
if_acmpne 34
32: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Short.valueOf:(Ljava/lang/String;)Ljava/lang/Short;
33: areturn
34: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.isEnum:()Z
ifeq 39
35: aload 0
aload 1
invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
36: areturn
37: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 38: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Conversion issue on parameter: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 39: StackMap locals:
StackMap stack:
new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Unsupported type parameter : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 type Ljava/lang/Class<TT;>;
0 40 1 value Ljava/lang/String;
0 40 2 paramName Ljava/lang/String;
38 39 3 e Ljava/lang/Exception;
Exception table:
from to target type
0 6 37 Class java.lang.Exception
7 9 37 Class java.lang.Exception
10 12 37 Class java.lang.Exception
13 15 37 Class java.lang.Exception
16 18 37 Class java.lang.Exception
19 21 37 Class java.lang.Exception
22 24 37 Class java.lang.Exception
25 27 37 Class java.lang.Exception
28 30 37 Class java.lang.Exception
31 33 37 Class java.lang.Exception
34 36 37 Class java.lang.Exception
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Ljava/lang/String;Ljava/lang/String;)TT;
MethodParameters:
Name Flags
type
value
paramName
private static org.testng.IDataProviderMethod findDataProvider(java.lang.Object, org.testng.ITestClass, org.testng.internal.ConstructorOrMethod, org.testng.internal.annotations.IAnnotationFinder, org.testng.ITestContext);
descriptor: (Ljava/lang/Object;Lorg/testng/ITestClass;Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/ITestContext;)Lorg/testng/IDataProviderMethod;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=9, 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 1
aload 2
aload 3
invokestatic org.testng.internal.Parameters.findDataProviderInfo:(Lorg/testng/ITestClass;Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/annotations/IAnnotationFinder;)Lorg/testng/internal/annotations/IDataProvidable;
astore 6
start local 6 2: aload 6
ifnull 19
3: aload 6
invokeinterface org.testng.internal.annotations.IDataProvidable.getDataProvider:()Ljava/lang/String;
astore 7
start local 7 4: aload 6
invokeinterface org.testng.internal.annotations.IDataProvidable.getDataProviderClass:()Ljava/lang/Class;
astore 8
start local 8 5: aload 7
invokestatic org.testng.internal.Utils.isStringEmpty:(Ljava/lang/String;)Z
ifne 19
6: aload 0
aload 1
aload 3
aload 7
aload 8
aload 4
invokestatic org.testng.internal.Parameters.findDataProvider:(Ljava/lang/Object;Lorg/testng/ITestClass;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/String;Ljava/lang/Class;Lorg/testng/ITestContext;)Lorg/testng/IDataProviderMethod;
7: astore 5
8: aload 5
ifnonnull 19
9: new org.testng.TestNGException
dup
10: new java.lang.StringBuilder
dup
ldc "Method "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
12: ldc " requires a @DataProvider named : "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: aload 8
ifnull 15
new java.lang.StringBuilder
dup
ldc " in class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
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;
goto 16
StackMap locals: java.lang.Object org.testng.ITestClass org.testng.internal.ConstructorOrMethod org.testng.internal.annotations.IAnnotationFinder org.testng.ITestContext org.testng.IDataProviderMethod org.testng.internal.annotations.IDataProvidable java.lang.String java.lang.Class
StackMap stack: new 9 new 9 java.lang.StringBuilder
15: ldc ""
StackMap locals: java.lang.Object org.testng.ITestClass org.testng.internal.ConstructorOrMethod org.testng.internal.annotations.IAnnotationFinder org.testng.ITestContext org.testng.IDataProviderMethod org.testng.internal.annotations.IDataProvidable java.lang.String java.lang.Class
StackMap stack: new 9 new 9 java.lang.StringBuilder java.lang.String
16: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
17: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
end local 8 end local 7 19: StackMap locals:
StackMap stack:
aload 5
areturn
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 20 0 instance Ljava/lang/Object;
0 20 1 clazz Lorg/testng/ITestClass;
0 20 2 m Lorg/testng/internal/ConstructorOrMethod;
0 20 3 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 20 4 context Lorg/testng/ITestContext;
1 20 5 result Lorg/testng/IDataProviderMethod;
2 20 6 dp Lorg/testng/internal/annotations/IDataProvidable;
4 19 7 dataProviderName Ljava/lang/String;
5 19 8 dataProviderClass Ljava/lang/Class;
MethodParameters:
Name Flags
instance
clazz
m
finder
context
private static org.testng.internal.annotations.IDataProvidable findDataProviderInfo(org.testng.ITestClass, org.testng.internal.ConstructorOrMethod, org.testng.internal.annotations.IAnnotationFinder);
descriptor: (Lorg/testng/ITestClass;Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/annotations/IAnnotationFinder;)Lorg/testng/internal/annotations/IDataProvidable;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
ifnonnull 2
1: aload 2
aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getConstructor:()Ljava/lang/reflect/Constructor;
invokestatic org.testng.internal.annotations.AnnotationHelper.findFactory:(Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/reflect/Constructor;)Lorg/testng/annotations/IFactoryAnnotation;
areturn
2: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
invokestatic org.testng.internal.annotations.AnnotationHelper.findTest:(Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/reflect/Method;)Lorg/testng/annotations/ITestAnnotation;
astore 3
start local 3 3: aload 3
ifnull 8
4: aload 2
aload 0
invokeinterface org.testng.ITestClass.getRealClass:()Ljava/lang/Class;
invokestatic org.testng.internal.annotations.AnnotationHelper.findTest:(Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Class;)Lorg/testng/annotations/ITestAnnotation;
astore 4
start local 4 5: aload 4
ifnonnull 7
6: aload 3
areturn
7: StackMap locals: org.testng.annotations.ITestAnnotation org.testng.annotations.ITestAnnotation
StackMap stack:
aload 3
aload 4
invokestatic org.testng.internal.Parameters.merge:(Lorg/testng/annotations/ITestAnnotation;Lorg/testng/annotations/ITestAnnotation;)Lorg/testng/internal/annotations/IDataProvidable;
areturn
end local 4 8: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
invokestatic org.testng.internal.annotations.AnnotationHelper.findFactory:(Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/reflect/Method;)Lorg/testng/annotations/IFactoryAnnotation;
astore 4
start local 4 9: aload 4
ifnull 11
10: aload 4
areturn
11: StackMap locals: org.testng.annotations.IFactoryAnnotation
StackMap stack:
aload 2
aload 0
invokeinterface org.testng.ITestClass.getRealClass:()Ljava/lang/Class;
invokestatic org.testng.internal.annotations.AnnotationHelper.findTest:(Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Class;)Lorg/testng/annotations/ITestAnnotation;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 clazz Lorg/testng/ITestClass;
0 12 1 m Lorg/testng/internal/ConstructorOrMethod;
0 12 2 finder Lorg/testng/internal/annotations/IAnnotationFinder;
3 12 3 result Lorg/testng/annotations/ITestAnnotation;
5 8 4 classLevel Lorg/testng/annotations/ITestAnnotation;
9 12 4 factory Lorg/testng/annotations/IFactoryAnnotation;
MethodParameters:
Name Flags
clazz
m
finder
private static org.testng.internal.annotations.IDataProvidable merge(org.testng.annotations.ITestAnnotation, org.testng.annotations.ITestAnnotation);
descriptor: (Lorg/testng/annotations/ITestAnnotation;Lorg/testng/annotations/ITestAnnotation;)Lorg/testng/internal/annotations/IDataProvidable;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.testng.internal.Parameters.isDataProviderClassEmpty:(Lorg/testng/annotations/ITestAnnotation;)Z
ifeq 2
aload 1
invokestatic org.testng.internal.Parameters.isDataProviderNameEmpty:(Lorg/testng/annotations/ITestAnnotation;)Z
ifeq 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokeinterface org.testng.annotations.ITestAnnotation.getDataProvider:()Ljava/lang/String;
invokestatic org.testng.util.Strings.isNullOrEmpty:(Ljava/lang/String;)Z
ifeq 5
3: aload 1
invokeinterface org.testng.annotations.ITestAnnotation.getDataProvider:()Ljava/lang/String;
invokestatic org.testng.util.Strings.isNotNullAndNotEmpty:(Ljava/lang/String;)Z
ifeq 5
4: aload 0
aload 1
invokeinterface org.testng.annotations.ITestAnnotation.getDataProvider:()Ljava/lang/String;
invokeinterface org.testng.annotations.ITestAnnotation.setDataProvider:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 0
invokestatic org.testng.internal.Parameters.isDataProviderClassEmpty:(Lorg/testng/annotations/ITestAnnotation;)Z
ifeq 7
aload 1
invokestatic org.testng.internal.Parameters.isDataProviderClassEmpty:(Lorg/testng/annotations/ITestAnnotation;)Z
ifne 7
6: aload 0
aload 1
invokeinterface org.testng.annotations.ITestAnnotation.getDataProviderClass:()Ljava/lang/Class;
invokeinterface org.testng.annotations.ITestAnnotation.setDataProviderClass:(Ljava/lang/Class;)V
7: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 methodLevel Lorg/testng/annotations/ITestAnnotation;
0 8 1 classLevel Lorg/testng/annotations/ITestAnnotation;
MethodParameters:
Name Flags
methodLevel
classLevel
private static boolean isDataProviderClassEmpty(org.testng.annotations.ITestAnnotation);
descriptor: (Lorg/testng/annotations/ITestAnnotation;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface org.testng.annotations.ITestAnnotation.getDataProviderClass:()Ljava/lang/Class;
ifnull 1
ldc Ljava/lang/Object;
aload 0
invokeinterface org.testng.annotations.ITestAnnotation.getDataProviderClass:()Ljava/lang/Class;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 annotation Lorg/testng/annotations/ITestAnnotation;
MethodParameters:
Name Flags
annotation
private static boolean isDataProviderNameEmpty(org.testng.annotations.ITestAnnotation);
descriptor: (Lorg/testng/annotations/ITestAnnotation;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface org.testng.annotations.ITestAnnotation.getDataProvider:()Ljava/lang/String;
invokestatic org.testng.util.Strings.isNullOrEmpty:(Ljava/lang/String;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 annotation Lorg/testng/annotations/ITestAnnotation;
MethodParameters:
Name Flags
annotation
private static org.testng.IDataProviderMethod findDataProvider(, org.testng.ITestClass, org.testng.internal.annotations.IAnnotationFinder, java.lang.String, java.lang.Class<?>, org.testng.ITestContext);
descriptor: (Ljava/lang/Object;Lorg/testng/ITestClass;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/String;Ljava/lang/Class;Lorg/testng/ITestContext;)Lorg/testng/IDataProviderMethod;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=14, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aconst_null
astore 6
start local 6 1: aload 1
invokeinterface org.testng.ITestClass.getRealClass:()Ljava/lang/Class;
astore 7
start local 7 2: iconst_0
istore 8
start local 8 3: aload 4
ifnull 6
4: aload 4
astore 7
5: iconst_1
istore 8
6: StackMap locals: org.testng.IDataProviderMethod java.lang.Class int
StackMap stack:
aload 7
invokestatic org.testng.internal.ClassHelper.getAvailableMethods:(Ljava/lang/Class;)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 10
goto 23
StackMap locals: java.lang.Object org.testng.ITestClass org.testng.internal.annotations.IAnnotationFinder java.lang.String java.lang.Class org.testng.ITestContext org.testng.IDataProviderMethod java.lang.Class int top java.util.Iterator
StackMap stack:
7: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
astore 9
start local 9 8: aload 2
aload 9
ldc Lorg/testng/annotations/IDataProviderAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Ljava/lang/reflect/Method;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IDataProviderAnnotation
astore 11
start local 11 9: aload 11
ifnull 23
aload 3
aload 11
aload 9
invokestatic org.testng.internal.Parameters.getDataProviderName:(Lorg/testng/annotations/IDataProviderAnnotation;Ljava/lang/reflect/Method;)Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 23
10: iload 8
ifeq 17
aload 9
invokevirtual java.lang.reflect.Method.getModifiers:()I
bipush 8
iand
ifne 17
11: aload 5
aload 1
invokeinterface org.testng.ITestContext.getInjector:(Lorg/testng/IClass;)Lcom/google/inject/Injector;
astore 13
start local 13 12: aload 13
ifnull 15
13: aload 13
aload 4
invokeinterface com.google.inject.Injector.getInstance:(Ljava/lang/Class;)Ljava/lang/Object;
astore 12
start local 12 14: goto 18
end local 12 15: StackMap locals: java.lang.Object org.testng.ITestClass org.testng.internal.annotations.IAnnotationFinder java.lang.String java.lang.Class org.testng.ITestContext org.testng.IDataProviderMethod java.lang.Class int java.lang.reflect.Method java.util.Iterator org.testng.annotations.IDataProviderAnnotation top com.google.inject.Injector
StackMap stack:
aload 4
invokestatic org.testng.internal.InstanceCreator.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
astore 12
end local 13 start local 12 16: goto 18
end local 12 17: StackMap locals: java.lang.Object org.testng.ITestClass org.testng.internal.annotations.IAnnotationFinder java.lang.String java.lang.Class org.testng.ITestContext org.testng.IDataProviderMethod java.lang.Class int java.lang.reflect.Method java.util.Iterator org.testng.annotations.IDataProviderAnnotation
StackMap stack:
aload 0
astore 12
start local 12 18: StackMap locals: java.lang.Object
StackMap stack:
aload 9
invokevirtual java.lang.reflect.Method.getModifiers:()I
bipush 8
iand
ifne 20
aload 12
ifnonnull 20
19: aload 7
invokestatic org.testng.internal.InstanceCreator.newInstanceOrNull:(Ljava/lang/Class;)Ljava/lang/Object;
astore 12
20: StackMap locals:
StackMap stack:
aload 6
ifnull 22
21: new org.testng.TestNGException
dup
new java.lang.StringBuilder
dup
ldc "Found two providers called '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' on "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.testng.TestNGException.<init>:(Ljava/lang/String;)V
athrow
22: StackMap locals:
StackMap stack:
new org.testng.internal.DataProviderMethod
dup
aload 12
aload 9
aload 11
invokespecial org.testng.internal.DataProviderMethod.<init>:(Ljava/lang/Object;Ljava/lang/reflect/Method;Lorg/testng/annotations/IDataProviderAnnotation;)V
astore 6
end local 12 end local 11 end local 9 23: StackMap locals: java.lang.Object org.testng.ITestClass org.testng.internal.annotations.IAnnotationFinder java.lang.String java.lang.Class org.testng.ITestContext org.testng.IDataProviderMethod java.lang.Class int top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
24: aload 6
areturn
end local 8 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 25 0 instance Ljava/lang/Object;
0 25 1 clazz Lorg/testng/ITestClass;
0 25 2 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 25 3 name Ljava/lang/String;
0 25 4 dataProviderClass Ljava/lang/Class<*>;
0 25 5 context Lorg/testng/ITestContext;
1 25 6 result Lorg/testng/IDataProviderMethod;
2 25 7 cls Ljava/lang/Class<*>;
3 25 8 shouldBeStatic Z
8 23 9 m Ljava/lang/reflect/Method;
9 23 11 dp Lorg/testng/annotations/IDataProviderAnnotation;
14 15 12 instanceToUse Ljava/lang/Object;
16 17 12 instanceToUse Ljava/lang/Object;
18 23 12 instanceToUse Ljava/lang/Object;
12 16 13 injector Lcom/google/inject/Injector;
Signature: (Ljava/lang/Object;Lorg/testng/ITestClass;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/String;Ljava/lang/Class<*>;Lorg/testng/ITestContext;)Lorg/testng/IDataProviderMethod;
MethodParameters:
Name Flags
instance
clazz
finder
name
dataProviderClass
context
private static java.lang.String getDataProviderName(org.testng.annotations.IDataProviderAnnotation, java.lang.reflect.Method);
descriptor: (Lorg/testng/annotations/IDataProviderAnnotation;Ljava/lang/reflect/Method;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.testng.annotations.IDataProviderAnnotation.getName:()Ljava/lang/String;
invokestatic org.testng.util.Strings.isNullOrEmpty:(Ljava/lang/String;)Z
ifeq 1
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
invokeinterface org.testng.annotations.IDataProviderAnnotation.getName:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 dp Lorg/testng/annotations/IDataProviderAnnotation;
0 3 1 m Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
dp
m
private static java.lang.String[] (org.testng.internal.annotations.IAnnotationFinder, org.testng.internal.ConstructorOrMethod);
descriptor: (Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/internal/ConstructorOrMethod;)[Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
ifnull 2
1: aload 0
aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getMethod:()Ljava/lang/reflect/Method;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findOptionalValues:(Ljava/lang/reflect/Method;)[Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.testng.internal.ConstructorOrMethod.getConstructor:()Ljava/lang/reflect/Constructor;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findOptionalValues:(Ljava/lang/reflect/Constructor;)[Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 3 1 consMethod Lorg/testng/internal/ConstructorOrMethod;
MethodParameters:
Name Flags
finder
consMethod
private static java.lang.Object[] createParameters(org.testng.internal.ConstructorOrMethod, org.testng.internal.Parameters$MethodParameters, org.testng.internal.annotations.IAnnotationFinder, org.testng.xml.XmlSuite, java.lang.String);
descriptor: (Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/xml/XmlSuite;Ljava/lang/String;)[Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: invokestatic org.testng.collections.Lists.newArrayList:()Ljava/util/List;
astore 5
start local 5 1: aload 2
aload 0
invokestatic org.testng.internal.Parameters.extractOptionalValues:(Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/internal/ConstructorOrMethod;)[Ljava/lang/String;
astore 6
start local 6 2: aload 2
aload 0
ldc Lorg/testng/annotations/IParametersAnnotation;
invokeinterface org.testng.internal.annotations.IAnnotationFinder.findAnnotation:(Lorg/testng/internal/ConstructorOrMethod;Ljava/lang/Class;)Lorg/testng/annotations/IAnnotation;
checkcast org.testng.annotations.IParametersAnnotation
astore 8
start local 8 3: aload 0
invokevirtual org.testng.internal.ConstructorOrMethod.getParameterTypes:()[Ljava/lang/Class;
astore 9
start local 9 4: aload 8
ifnull 10
5: aload 8
invokeinterface org.testng.annotations.IParametersAnnotation.getValue:()[Ljava/lang/String;
astore 10
start local 10 6: aload 0
aload 9
aload 6
aload 4
aload 10
aload 1
aload 3
7: invokestatic org.testng.internal.Parameters.createParametersForMethod:(Lorg/testng/internal/ConstructorOrMethod;[Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
8: astore 7
end local 10 start local 7 9: goto 11
end local 7 10: StackMap locals: org.testng.internal.ConstructorOrMethod org.testng.internal.Parameters$MethodParameters org.testng.internal.annotations.IAnnotationFinder org.testng.xml.XmlSuite java.lang.String java.util.List java.lang.String[] top org.testng.annotations.IParametersAnnotation java.lang.Class[]
StackMap stack:
aload 0
aload 9
aload 6
aload 4
iconst_0
anewarray java.lang.String
aload 1
aload 3
invokestatic org.testng.internal.Parameters.createParametersForMethod:(Lorg/testng/internal/ConstructorOrMethod;[Ljava/lang/Class;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;)[Ljava/lang/Object;
astore 7
start local 7 11: StackMap locals: org.testng.internal.ConstructorOrMethod org.testng.internal.Parameters$MethodParameters org.testng.internal.annotations.IAnnotationFinder org.testng.xml.XmlSuite java.lang.String java.util.List java.lang.String[] java.lang.Object[] org.testng.annotations.IParametersAnnotation java.lang.Class[]
StackMap stack:
aload 5
aload 7
invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
pop
12: iconst_0
istore 10
start local 10 13: goto 17
14: StackMap locals: int
StackMap stack:
ldc [Ljava/lang/Object;
aload 9
iload 10
aaload
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 16
15: aload 5
iload 10
aload 1
getfield org.testng.internal.Parameters$MethodParameters.parameterValues:[Ljava/lang/Object;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
16: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
17: iload 10
aload 9
arraylength
if_icmplt 14
end local 10 18: aload 5
iconst_0
anewarray java.lang.Object
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
areturn
end local 9 end local 8 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 19 0 m Lorg/testng/internal/ConstructorOrMethod;
0 19 1 params Lorg/testng/internal/Parameters$MethodParameters;
0 19 2 finder Lorg/testng/internal/annotations/IAnnotationFinder;
0 19 3 xmlSuite Lorg/testng/xml/XmlSuite;
0 19 4 atName Ljava/lang/String;
1 19 5 result Ljava/util/List<Ljava/lang/Object;>;
2 19 6 extraOptionalValues [Ljava/lang/String;
9 10 7 extraParameters [Ljava/lang/Object;
11 19 7 extraParameters [Ljava/lang/Object;
3 19 8 annotation Lorg/testng/annotations/IParametersAnnotation;
4 19 9 types [Ljava/lang/Class;
6 9 10 parameterNames [Ljava/lang/String;
13 18 10 i I
MethodParameters:
Name Flags
m
params
finder
xmlSuite
atName
public static org.testng.internal.ParameterHolder handleParameters(org.testng.ITestNGMethod, java.util.Map<java.lang.String, java.lang.String>, , org.testng.internal.Parameters$MethodParameters, org.testng.xml.XmlSuite, org.testng.internal.annotations.IAnnotationFinder, , org.testng.DataProviderHolder);
descriptor: (Lorg/testng/ITestNGMethod;Ljava/util/Map;Ljava/lang/Object;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Object;Lorg/testng/DataProviderHolder;)Lorg/testng/internal/ParameterHolder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
1: aload 1
2: aload 2
3: aload 3
4: aload 4
5: aload 5
6: aload 6
7: aload 7
8: ldc "@Test"
9: invokestatic org.testng.internal.Parameters.handleParameters:(Lorg/testng/ITestNGMethod;Ljava/util/Map;Ljava/lang/Object;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Object;Lorg/testng/DataProviderHolder;Ljava/lang/String;)Lorg/testng/internal/ParameterHolder;
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 10 0 testMethod Lorg/testng/ITestNGMethod;
0 10 1 allParameterNames Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 10 2 instance Ljava/lang/Object;
0 10 3 methodParams Lorg/testng/internal/Parameters$MethodParameters;
0 10 4 xmlSuite Lorg/testng/xml/XmlSuite;
0 10 5 annotationFinder Lorg/testng/internal/annotations/IAnnotationFinder;
0 10 6 fedInstance Ljava/lang/Object;
0 10 7 holder Lorg/testng/DataProviderHolder;
Signature: (Lorg/testng/ITestNGMethod;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/Object;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Object;Lorg/testng/DataProviderHolder;)Lorg/testng/internal/ParameterHolder;
MethodParameters:
Name Flags
testMethod
allParameterNames
instance
methodParams
xmlSuite
annotationFinder
fedInstance
holder
public static org.testng.internal.ParameterHolder handleParameters(org.testng.ITestNGMethod, java.util.Map<java.lang.String, java.lang.String>, , org.testng.internal.Parameters$MethodParameters, org.testng.xml.XmlSuite, org.testng.internal.annotations.IAnnotationFinder, , org.testng.DataProviderHolder, java.lang.String);
descriptor: (Lorg/testng/ITestNGMethod;Ljava/util/Map;Ljava/lang/Object;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Object;Lorg/testng/DataProviderHolder;Ljava/lang/String;)Lorg/testng/internal/ParameterHolder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=18, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 2
1: aload 0
invokeinterface org.testng.ITestNGMethod.getTestClass:()Lorg/testng/ITestClass;
2: aload 0
invokeinterface org.testng.ITestNGMethod.getConstructorOrMethod:()Lorg/testng/internal/ConstructorOrMethod;
3: aload 5
4: aload 3
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
5: invokestatic org.testng.internal.Parameters.findDataProvider:(Ljava/lang/Object;Lorg/testng/ITestClass;Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/ITestContext;)Lorg/testng/IDataProviderMethod;
6: astore 9
start local 9 7: aload 9
ifnull 51
8: aload 0
instanceof org.testng.internal.TestNGMethod
ifeq 10
9: aload 0
checkcast org.testng.internal.TestNGMethod
aload 9
invokevirtual org.testng.internal.TestNGMethod.setDataProviderMethod:(Lorg/testng/IDataProviderMethod;)V
10: StackMap locals: org.testng.IDataProviderMethod
StackMap stack:
aload 0
invokeinterface org.testng.ITestNGMethod.getConstructorOrMethod:()Lorg/testng/internal/ConstructorOrMethod;
invokevirtual org.testng.internal.ConstructorOrMethod.getParameterTypes:()[Ljava/lang/Class;
arraylength
istore 11
start local 11 11: iconst_0
istore 12
start local 12 12: goto 16
13: StackMap locals: org.testng.ITestNGMethod java.util.Map java.lang.Object org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite org.testng.internal.annotations.IAnnotationFinder java.lang.Object org.testng.DataProviderHolder java.lang.String org.testng.IDataProviderMethod top int int
StackMap stack:
new java.lang.StringBuilder
dup
ldc "param"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 12
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 13
start local 13 14: aload 1
aload 13
aload 13
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 13 15: iinc 12 1
StackMap locals:
StackMap stack:
16: iload 12
iload 11
if_icmplt 13
end local 12 17: aload 7
invokevirtual org.testng.DataProviderHolder.getListeners:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 13
goto 22
StackMap locals: org.testng.ITestNGMethod java.util.Map java.lang.Object org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite org.testng.internal.annotations.IAnnotationFinder java.lang.Object org.testng.DataProviderHolder java.lang.String org.testng.IDataProviderMethod top int top java.util.Iterator
StackMap stack:
18: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.testng.IDataProviderListener
astore 12
start local 12 19: aload 12
20: aload 9
aload 0
aload 3
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
21: invokeinterface org.testng.IDataProviderListener.beforeDataProviderExecution:(Lorg/testng/IDataProviderMethod;Lorg/testng/ITestNGMethod;Lorg/testng/ITestContext;)V
end local 12 22: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
23: aload 9
24: invokeinterface org.testng.IDataProviderMethod.getInstance:()Ljava/lang/Object;
25: aload 9
invokeinterface org.testng.IDataProviderMethod.getMethod:()Ljava/lang/reflect/Method;
26: aload 0
27: aload 3
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
28: aload 6
29: aload 5
30: invokestatic org.testng.internal.MethodInvocationHelper.invokeDataProvider:(Ljava/lang/Object;Ljava/lang/reflect/Method;Lorg/testng/ITestNGMethod;Lorg/testng/ITestContext;Ljava/lang/Object;Lorg/testng/internal/annotations/IAnnotationFinder;)Ljava/util/Iterator;
31: astore 12
start local 12 32: aload 7
invokevirtual org.testng.DataProviderHolder.getListeners:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 14
goto 37
StackMap locals: org.testng.ITestNGMethod java.util.Map java.lang.Object org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite org.testng.internal.annotations.IAnnotationFinder java.lang.Object org.testng.DataProviderHolder java.lang.String org.testng.IDataProviderMethod top int java.util.Iterator top java.util.Iterator
StackMap stack:
33: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.testng.IDataProviderListener
astore 13
start local 13 34: aload 13
35: aload 9
aload 0
aload 3
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
36: invokeinterface org.testng.IDataProviderListener.afterDataProviderExecution:(Lorg/testng/IDataProviderMethod;Lorg/testng/ITestNGMethod;Lorg/testng/ITestContext;)V
end local 13 37: StackMap locals:
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
38: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 13
start local 13 39: aload 13
aload 0
invokeinterface org.testng.ITestNGMethod.getInvocationNumbers:()Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
40: aload 13
aload 9
invokeinterface org.testng.IDataProviderMethod.getIndices:()Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
41: new org.testng.internal.Parameters$1
dup
aload 12
aload 9
aload 0
aload 13
invokespecial org.testng.internal.Parameters$1.<init>:(Ljava/util/Iterator;Lorg/testng/IDataProviderMethod;Lorg/testng/ITestNGMethod;Ljava/util/List;)V
42: astore 14
start local 14 43: aload 0
aload 14
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic call(Ljava/util/Iterator;)Ljava/util/concurrent/Callable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
java/util/Iterator.hasNext()Z (9 itf)
()Ljava/lang/Boolean;
invokeinterface org.testng.ITestNGMethod.setMoreInvocationChecker:(Ljava/util/concurrent/Callable;)V
44: aload 7
invokevirtual org.testng.DataProviderHolder.getInterceptors:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 17
goto 47
StackMap locals: org.testng.ITestNGMethod java.util.Map java.lang.Object org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite org.testng.internal.annotations.IAnnotationFinder java.lang.Object org.testng.DataProviderHolder java.lang.String org.testng.IDataProviderMethod top int java.util.Iterator java.util.List java.util.Iterator top top java.util.Iterator
StackMap stack:
45: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.testng.IDataProviderInterceptor
astore 16
start local 16 46: aload 16
aload 14
aload 9
aload 0
aload 3
getfield org.testng.internal.Parameters$MethodParameters.context:Lorg/testng/ITestContext;
invokeinterface org.testng.IDataProviderInterceptor.intercept:(Ljava/util/Iterator;Lorg/testng/IDataProviderMethod;Lorg/testng/ITestNGMethod;Lorg/testng/ITestContext;)Ljava/util/Iterator;
astore 14
end local 16 47: StackMap locals:
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 45
48: new org.testng.internal.ParameterHolder
dup
49: aload 14
getstatic org.testng.internal.ParameterHolder$ParameterOrigin.ORIGIN_DATA_PROVIDER:Lorg/testng/internal/ParameterHolder$ParameterOrigin;
aload 9
50: invokespecial org.testng.internal.ParameterHolder.<init>:(Ljava/util/Iterator;Lorg/testng/internal/ParameterHolder$ParameterOrigin;Lorg/testng/IDataProviderMethod;)V
areturn
end local 14 end local 13 end local 12 end local 11 51: StackMap locals: org.testng.ITestNGMethod java.util.Map java.lang.Object org.testng.internal.Parameters$MethodParameters org.testng.xml.XmlSuite org.testng.internal.annotations.IAnnotationFinder java.lang.Object org.testng.DataProviderHolder java.lang.String org.testng.IDataProviderMethod
StackMap stack:
aload 3
getfield org.testng.internal.Parameters$MethodParameters.xmlParameters:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ifeq 54
52: getstatic org.testng.internal.ParameterHolder$ParameterOrigin.NATIVE:Lorg/testng/internal/ParameterHolder$ParameterOrigin;
astore 10
start local 10 53: goto 55
end local 10 54: StackMap locals:
StackMap stack:
getstatic org.testng.internal.ParameterHolder$ParameterOrigin.ORIGIN_XML:Lorg/testng/internal/ParameterHolder$ParameterOrigin;
astore 10
start local 10 55: StackMap locals: org.testng.internal.ParameterHolder$ParameterOrigin
StackMap stack:
aload 1
aload 3
getfield org.testng.internal.Parameters$MethodParameters.xmlParameters:Ljava/util/Map;
invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
56: iconst_1
anewarray java.lang.Object[]
astore 11
start local 11 57: aload 11
iconst_0
58: aload 0
invokeinterface org.testng.ITestNGMethod.getConstructorOrMethod:()Lorg/testng/internal/ConstructorOrMethod;
59: aload 3
60: aload 5
61: aload 4
62: aload 8
63: invokestatic org.testng.internal.Parameters.createParameters:(Lorg/testng/internal/ConstructorOrMethod;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/internal/annotations/IAnnotationFinder;Lorg/testng/xml/XmlSuite;Ljava/lang/String;)[Ljava/lang/Object;
64: aastore
65: aload 0
aload 11
arraylength
invokeinterface org.testng.ITestNGMethod.setParameterInvocationCount:(I)V
66: new org.testng.internal.collections.ArrayIterator
dup
aload 11
invokespecial org.testng.internal.collections.ArrayIterator.<init>:([[Ljava/lang/Object;)V
astore 12
start local 12 67: new org.testng.internal.ParameterHolder
dup
aload 12
aload 10
aconst_null
invokespecial org.testng.internal.ParameterHolder.<init>:(Ljava/util/Iterator;Lorg/testng/internal/ParameterHolder$ParameterOrigin;Lorg/testng/IDataProviderMethod;)V
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 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 68 0 testMethod Lorg/testng/ITestNGMethod;
0 68 1 allParameterNames Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 68 2 instance Ljava/lang/Object;
0 68 3 methodParams Lorg/testng/internal/Parameters$MethodParameters;
0 68 4 xmlSuite Lorg/testng/xml/XmlSuite;
0 68 5 annotationFinder Lorg/testng/internal/annotations/IAnnotationFinder;
0 68 6 fedInstance Ljava/lang/Object;
0 68 7 holder Lorg/testng/DataProviderHolder;
0 68 8 annotationName Ljava/lang/String;
7 68 9 dataProviderMethod Lorg/testng/IDataProviderMethod;
53 54 10 origin Lorg/testng/internal/ParameterHolder$ParameterOrigin;
55 68 10 origin Lorg/testng/internal/ParameterHolder$ParameterOrigin;
11 51 11 parameterCount I
12 17 12 i I
14 15 13 n Ljava/lang/String;
19 22 12 dataProviderListener Lorg/testng/IDataProviderListener;
32 51 12 parameters Ljava/util/Iterator<[Ljava/lang/Object;>;
34 37 13 dataProviderListener Lorg/testng/IDataProviderListener;
39 51 13 allIndices Ljava/util/List<Ljava/lang/Integer;>;
43 51 14 filteredParameters Ljava/util/Iterator<[Ljava/lang/Object;>;
46 47 16 interceptor Lorg/testng/IDataProviderInterceptor;
57 68 11 allParameterValuesArray [[Ljava/lang/Object;
67 68 12 parameters Ljava/util/Iterator<[Ljava/lang/Object;>;
Signature: (Lorg/testng/ITestNGMethod;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/Object;Lorg/testng/internal/Parameters$MethodParameters;Lorg/testng/xml/XmlSuite;Lorg/testng/internal/annotations/IAnnotationFinder;Ljava/lang/Object;Lorg/testng/DataProviderHolder;Ljava/lang/String;)Lorg/testng/internal/ParameterHolder;
MethodParameters:
Name Flags
testMethod
allParameterNames
instance
methodParams
xmlSuite
annotationFinder
fedInstance
holder
annotationName
public static java.lang.Object[] injectParameters(java.lang.Object[], java.lang.reflect.Method, org.testng.ITestContext);
descriptor: ([Ljava/lang/Object;Ljava/lang/reflect/Method;Lorg/testng/ITestContext;)[Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new org.testng.internal.reflect.MethodMatcherContext
dup
aload 1
aload 0
aload 2
aconst_null
invokespecial org.testng.internal.reflect.MethodMatcherContext.<init>:(Ljava/lang/reflect/Method;[Ljava/lang/Object;Lorg/testng/ITestContext;Lorg/testng/ITestResult;)V
1: astore 3
start local 3 2: new org.testng.internal.reflect.DataProviderMethodMatcher
dup
aload 3
invokespecial org.testng.internal.reflect.DataProviderMethodMatcher.<init>:(Lorg/testng/internal/reflect/MethodMatcherContext;)V
astore 4
start local 4 3: aload 4
invokeinterface org.testng.internal.reflect.MethodMatcher.getConformingArguments:()[Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 parameterValues [Ljava/lang/Object;
0 4 1 method Ljava/lang/reflect/Method;
0 4 2 context Lorg/testng/ITestContext;
2 4 3 matcherContext Lorg/testng/internal/reflect/MethodMatcherContext;
3 4 4 matcher Lorg/testng/internal/reflect/MethodMatcher;
Exceptions:
throws org.testng.TestNGException
MethodParameters:
Name Flags
parameterValues
method
context
public static [] getParametersFromIndex(java.util.Iterator<java.lang.Object[]>, int);
descriptor: (Ljava/util/Iterator;I)[Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: goto 5
1: StackMap locals:
StackMap stack:
aload 0
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object[]
astore 2
start local 2 2: iload 1
ifne 4
3: aload 2
areturn
4: StackMap locals: java.lang.Object[]
StackMap stack:
iinc 1 -1
end local 2 5: StackMap locals:
StackMap stack:
aload 0
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 parametersValues Ljava/util/Iterator<[Ljava/lang/Object;>;
0 7 1 index I
2 5 2 parameters [Ljava/lang/Object;
Signature: (Ljava/util/Iterator<[Ljava/lang/Object;>;I)[Ljava/lang/Object;
MethodParameters:
Name Flags
parametersValues
index
private static boolean lambda$0(java.lang.reflect.Method, java.lang.Class);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Class;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 3 1 annotation Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
}
SourceFile: "Parameters.java"
NestMembers:
org.testng.internal.Parameters$1 org.testng.internal.Parameters$FilterOutInJectedTypesResult org.testng.internal.Parameters$MethodParameters
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final ParameterOrigin = org.testng.internal.ParameterHolder$ParameterOrigin of org.testng.internal.ParameterHolder
org.testng.internal.Parameters$1
final FilterOutInJectedTypesResult = org.testng.internal.Parameters$FilterOutInJectedTypesResult of org.testng.internal.Parameters
public MethodParameters = org.testng.internal.Parameters$MethodParameters of org.testng.internal.Parameters
public Assistant = org.testng.internal.reflect.InjectableParameter$Assistant of org.testng.internal.reflect.InjectableParameter