public class org.testng.internal.reflect.DataProviderMethodMatcher extends org.testng.internal.reflect.AbstractMethodMatcher
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.testng.internal.reflect.DataProviderMethodMatcher
super_class: org.testng.internal.reflect.AbstractMethodMatcher
{
private final org.testng.internal.reflect.DirectMethodMatcher directMethodMatcher;
descriptor: Lorg/testng/internal/reflect/DirectMethodMatcher;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.testng.internal.reflect.ArrayEndingMethodMatcher arrayEndingMethodMatcher;
descriptor: Lorg/testng/internal/reflect/ArrayEndingMethodMatcher;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.testng.internal.reflect.MethodMatcher matchingMatcher;
descriptor: Lorg/testng/internal/reflect/MethodMatcher;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.testng.internal.reflect.MethodMatcherContext);
descriptor: (Lorg/testng/internal/reflect/MethodMatcherContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 // org.testng.internal.reflect.DataProviderMethodMatcher this
start local 1 // org.testng.internal.reflect.MethodMatcherContext context
0: .line 11
aload 0 /* this */
aload 1 /* context */
invokespecial org.testng.internal.reflect.AbstractMethodMatcher.<init>:(Lorg/testng/internal/reflect/MethodMatcherContext;)V
1: .line 8
aload 0 /* this */
aconst_null
putfield org.testng.internal.reflect.DataProviderMethodMatcher.matchingMatcher:Lorg/testng/internal/reflect/MethodMatcher;
2: .line 12
aload 0 /* this */
new org.testng.internal.reflect.DirectMethodMatcher
dup
aload 1 /* context */
invokespecial org.testng.internal.reflect.DirectMethodMatcher.<init>:(Lorg/testng/internal/reflect/MethodMatcherContext;)V
putfield org.testng.internal.reflect.DataProviderMethodMatcher.directMethodMatcher:Lorg/testng/internal/reflect/DirectMethodMatcher;
3: .line 13
aload 0 /* this */
new org.testng.internal.reflect.ArrayEndingMethodMatcher
dup
aload 1 /* context */
invokespecial org.testng.internal.reflect.ArrayEndingMethodMatcher.<init>:(Lorg/testng/internal/reflect/MethodMatcherContext;)V
putfield org.testng.internal.reflect.DataProviderMethodMatcher.arrayEndingMethodMatcher:Lorg/testng/internal/reflect/ArrayEndingMethodMatcher;
4: .line 14
return
end local 1 // org.testng.internal.reflect.MethodMatcherContext context
end local 0 // org.testng.internal.reflect.DataProviderMethodMatcher this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/testng/internal/reflect/DataProviderMethodMatcher;
0 5 1 context Lorg/testng/internal/reflect/MethodMatcherContext;
MethodParameters:
Name Flags
context final
protected boolean hasConformance();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=1
start local 0 // org.testng.internal.reflect.DataProviderMethodMatcher this
0: .line 19
iconst_0
istore 1 /* matching */
start local 1 // boolean matching
1: .line 20
aload 0 /* this */
getfield org.testng.internal.reflect.DataProviderMethodMatcher.directMethodMatcher:Lorg/testng/internal/reflect/DirectMethodMatcher;
invokevirtual org.testng.internal.reflect.DirectMethodMatcher.conforms:()Z
ifeq 5
2: .line 21
iconst_1
istore 1 /* matching */
3: .line 22
aload 0 /* this */
aload 0 /* this */
getfield org.testng.internal.reflect.DataProviderMethodMatcher.directMethodMatcher:Lorg/testng/internal/reflect/DirectMethodMatcher;
putfield org.testng.internal.reflect.DataProviderMethodMatcher.matchingMatcher:Lorg/testng/internal/reflect/MethodMatcher;
4: .line 23
goto 8
StackMap locals: int
StackMap stack:
5: aload 0 /* this */
getfield org.testng.internal.reflect.DataProviderMethodMatcher.arrayEndingMethodMatcher:Lorg/testng/internal/reflect/ArrayEndingMethodMatcher;
invokevirtual org.testng.internal.reflect.ArrayEndingMethodMatcher.conforms:()Z
ifeq 8
6: .line 24
iconst_1
istore 1 /* matching */
7: .line 25
aload 0 /* this */
aload 0 /* this */
getfield org.testng.internal.reflect.DataProviderMethodMatcher.arrayEndingMethodMatcher:Lorg/testng/internal/reflect/ArrayEndingMethodMatcher;
putfield org.testng.internal.reflect.DataProviderMethodMatcher.matchingMatcher:Lorg/testng/internal/reflect/MethodMatcher;
8: .line 27
StackMap locals:
StackMap stack:
iload 1 /* matching */
ireturn
end local 1 // boolean matching
end local 0 // org.testng.internal.reflect.DataProviderMethodMatcher this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/testng/internal/reflect/DataProviderMethodMatcher;
1 9 1 matching Z
public java.lang.Object[] getConformingArguments();
descriptor: ()[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 // org.testng.internal.reflect.DataProviderMethodMatcher this
0: .line 33
aload 0 /* this */
invokevirtual org.testng.internal.reflect.DataProviderMethodMatcher.getConforms:()Ljava/lang/Boolean;
ifnonnull 2
1: .line 34
aload 0 /* this */
invokevirtual org.testng.internal.reflect.DataProviderMethodMatcher.conforms:()Z
pop
2: .line 36
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.testng.internal.reflect.DataProviderMethodMatcher.matchingMatcher:Lorg/testng/internal/reflect/MethodMatcher;
ifnull 4
3: .line 37
aload 0 /* this */
getfield org.testng.internal.reflect.DataProviderMethodMatcher.matchingMatcher:Lorg/testng/internal/reflect/MethodMatcher;
invokeinterface org.testng.internal.reflect.MethodMatcher.getConformingArguments:()[Ljava/lang/Object;
areturn
4: .line 39
StackMap locals:
StackMap stack:
ldc "[%s] has no parameters defined but was found to be using a data provider (either explicitly specified or inherited from class level annotation).\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
5: .line 41
aload 0 /* this */
invokevirtual org.testng.internal.reflect.DataProviderMethodMatcher.getContext:()Lorg/testng/internal/reflect/MethodMatcherContext;
invokevirtual org.testng.internal.reflect.MethodMatcherContext.getMethod:()Ljava/lang/reflect/Method;
aastore
6: .line 39
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 1 /* msg */
start local 1 // java.lang.String msg
7: .line 42
new org.testng.internal.reflect.MethodMatcherException
dup
8: .line 43
new java.lang.StringBuilder
dup
aload 1 /* msg */
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Data provider mismatch"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0 /* this */
invokevirtual org.testng.internal.reflect.DataProviderMethodMatcher.getContext:()Lorg/testng/internal/reflect/MethodMatcherContext;
invokevirtual org.testng.internal.reflect.MethodMatcherContext.getMethod:()Ljava/lang/reflect/Method;
aload 0 /* this */
invokevirtual org.testng.internal.reflect.DataProviderMethodMatcher.getContext:()Lorg/testng/internal/reflect/MethodMatcherContext;
invokevirtual org.testng.internal.reflect.MethodMatcherContext.getArguments:()[Ljava/lang/Object;
9: .line 42
invokespecial org.testng.internal.reflect.MethodMatcherException.<init>:(Ljava/lang/String;Ljava/lang/reflect/Method;[Ljava/lang/Object;)V
athrow
end local 1 // java.lang.String msg
end local 0 // org.testng.internal.reflect.DataProviderMethodMatcher this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/testng/internal/reflect/DataProviderMethodMatcher;
7 10 1 msg Ljava/lang/String;
}
SourceFile: "DataProviderMethodMatcher.java"