public final class io.vertx.junit5.VertxExtension implements org.junit.jupiter.api.extension.ParameterResolver, org.junit.jupiter.api.extension.BeforeTestExecutionCallback, org.junit.jupiter.api.extension.AfterTestExecutionCallback, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeAllCallback, org.junit.jupiter.api.extension.AfterAllCallback
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: io.vertx.junit5.VertxExtension
super_class: java.lang.Object
{
public static final int DEFAULT_TIMEOUT_DURATION;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 30
public static final java.util.concurrent.TimeUnit DEFAULT_TIMEOUT_UNIT;
descriptor: Ljava/util/concurrent/TimeUnit;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.String VERTX_INSTANCE_KEY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "Vertx"
private static final java.lang.String TEST_CONTEXT_KEY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "VertxTestContext"
private final java.util.HashMap<java.lang.Class<?>, io.vertx.junit5.VertxExtensionParameterProvider<?>> parameterProviders;
descriptor: Ljava/util/HashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/Class<*>;Lio/vertx/junit5/VertxExtensionParameterProvider<*>;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
putstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield io.vertx.junit5.VertxExtension.parameterProviders:Ljava/util/HashMap;
2: ldc Lio/vertx/junit5/VertxExtensionParameterProvider;
invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
invokevirtual java.util.ServiceLoader.iterator:()Ljava/util/Iterator;
astore 2
goto 5
StackMap locals: io.vertx.junit5.VertxExtension top java.util.Iterator
StackMap stack:
3: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.junit5.VertxExtensionParameterProvider
astore 1
start local 1 4: aload 0
getfield io.vertx.junit5.VertxExtension.parameterProviders:Ljava/util/HashMap;
aload 1
invokeinterface io.vertx.junit5.VertxExtensionParameterProvider.type:()Ljava/lang/Class;
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 1 5: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/junit5/VertxExtension;
4 5 1 parameterProvider Lio/vertx/junit5/VertxExtensionParameterProvider<*>;
public boolean supportsParameter(org.junit.jupiter.api.extension.ParameterContext, org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ParameterContext;Lorg/junit/jupiter/api/extension/ExtensionContext;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.junit5.VertxExtension.parameterProviders:Ljava/util/HashMap;
invokevirtual java.util.HashMap.keySet:()Ljava/util/Set;
aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.parameterType:(Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/junit5/VertxExtension;
0 1 1 parameterContext Lorg/junit/jupiter/api/extension/ParameterContext;
0 1 2 extensionContext Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws org.junit.jupiter.api.extension.ParameterResolutionException
MethodParameters:
Name Flags
parameterContext
extensionContext
private java.lang.Class<?> parameterType(org.junit.jupiter.api.extension.ParameterContext);
descriptor: (Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.junit.jupiter.api.extension.ParameterContext.getParameter:()Ljava/lang/reflect/Parameter;
invokevirtual java.lang.reflect.Parameter.getType:()Ljava/lang/Class;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/junit5/VertxExtension;
0 1 1 parameterContext Lorg/junit/jupiter/api/extension/ParameterContext;
Signature: (Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
parameterContext
public java.lang.Object resolveParameter(org.junit.jupiter.api.extension.ParameterContext, org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ParameterContext;Lorg/junit/jupiter/api/extension/ExtensionContext;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.parameterType:(Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class;
astore 3
start local 3 1: aload 0
getfield io.vertx.junit5.VertxExtension.parameterProviders:Ljava/util/HashMap;
aload 3
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.vertx.junit5.VertxExtensionParameterProvider
astore 4
start local 4 2: aload 3
ldc Lio/vertx/junit5/VertxTestContext;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 0
aload 2
invokevirtual io.vertx.junit5.VertxExtension.newTestContext:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/junit5/VertxTestContext;
areturn
4: StackMap locals: java.lang.Class io.vertx.junit5.VertxExtensionParameterProvider
StackMap stack:
aload 2
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
invokevirtual java.util.Optional.isPresent:()Z
ifeq 8
5: aload 0
aload 2
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast org.junit.jupiter.api.extension.ExtensionContext
invokevirtual io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
astore 5
start local 5 6: aload 5
aload 4
invokeinterface io.vertx.junit5.VertxExtensionParameterProvider.key:()Ljava/lang/String;
invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 8
7: aload 5
aload 4
invokeinterface io.vertx.junit5.VertxExtensionParameterProvider.key:()Ljava/lang/String;
invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokestatic io.vertx.junit5.VertxExtension.unpack:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 5 8: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
astore 5
start local 5 9: aload 5
aload 4
invokeinterface io.vertx.junit5.VertxExtensionParameterProvider.key:()Ljava/lang/String;
aload 4
aload 2
aload 1
invokedynamic apply(Lio/vertx/junit5/VertxExtensionParameterProvider;Lorg/junit/jupiter/api/extension/ExtensionContext;Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/util/function/Function;
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;)Ljava/lang/Object;
io/vertx/junit5/VertxExtension.lambda$0(Lio/vertx/junit5/VertxExtensionParameterProvider;Lorg/junit/jupiter/api/extension/ExtensionContext;Lorg/junit/jupiter/api/extension/ParameterContext;Ljava/lang/String;)Lio/vertx/junit5/ScopedObject; (6)
(Ljava/lang/String;)Lio/vertx/junit5/ScopedObject;
invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
invokestatic io.vertx.junit5.VertxExtension.unpack:(Ljava/lang/Object;)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 10 0 this Lio/vertx/junit5/VertxExtension;
0 10 1 parameterContext Lorg/junit/jupiter/api/extension/ParameterContext;
0 10 2 extensionContext Lorg/junit/jupiter/api/extension/ExtensionContext;
1 10 3 type Ljava/lang/Class<*>;
2 10 4 parameterProvider Lio/vertx/junit5/VertxExtensionParameterProvider<*>;
6 8 5 parentStore Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
9 10 5 store Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
Exceptions:
throws org.junit.jupiter.api.extension.ParameterResolutionException
MethodParameters:
Name Flags
parameterContext
extensionContext
private static java.lang.Object unpack(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof java.util.function.Supplier
ifeq 2
1: aload 0
checkcast java.util.function.Supplier
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 object Ljava/lang/Object;
MethodParameters:
Name Flags
object
private io.vertx.junit5.VertxTestContext newTestContext(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/junit5/VertxTestContext;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
astore 2
start local 2 1: aload 2
ldc "VertxTestContext"
invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
io/vertx/junit5/VertxExtension.lambda$1(Ljava/lang/String;)Lio/vertx/junit5/VertxExtension$ContextList; (6)
(Ljava/lang/String;)Lio/vertx/junit5/VertxExtension$ContextList;
invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast io.vertx.junit5.VertxExtension$ContextList
astore 3
start local 3 2: new io.vertx.junit5.VertxTestContext
dup
invokespecial io.vertx.junit5.VertxTestContext.<init>:()V
astore 4
start local 4 3: aload 3
aload 4
invokevirtual io.vertx.junit5.VertxExtension$ContextList.add:(Ljava/lang/Object;)Z
pop
4: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/junit5/VertxExtension;
0 5 1 extensionContext Lorg/junit/jupiter/api/extension/ExtensionContext;
1 5 2 store Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
2 5 3 contexts Lio/vertx/junit5/VertxExtension$ContextList;
3 5 4 newTestContext Lio/vertx/junit5/VertxTestContext;
MethodParameters:
Name Flags
extensionContext
private org.junit.jupiter.api.extension.ExtensionContext$Store store(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getstatic org.junit.jupiter.api.extension.ExtensionContext$Namespace.GLOBAL:Lorg/junit/jupiter/api/extension/ExtensionContext$Namespace;
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getStore:(Lorg/junit/jupiter/api/extension/ExtensionContext$Namespace;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/junit5/VertxExtension;
0 1 1 extensionContext Lorg/junit/jupiter/api/extension/ExtensionContext;
MethodParameters:
Name Flags
extensionContext
public void beforeAll(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/junit5/VertxExtension;
0 1 1 context Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
context
public void afterAll(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/junit5/VertxExtension;
0 2 1 context Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
context
public void beforeEach(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/junit5/VertxExtension;
0 2 1 context Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
context
public void afterEach(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/junit5/VertxExtension;
0 2 1 context Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
context
public void beforeTestExecution(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/junit5/VertxExtension;
0 2 1 context Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
context
public void afterTestExecution(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/junit5/VertxExtension;
0 2 1 context Lorg/junit/jupiter/api/extension/ExtensionContext;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
context
private void joinActiveTestContexts(org.junit.jupiter.api.extension.ExtensionContext);
descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getExecutionException:()Ljava/util/Optional;
invokevirtual java.util.Optional.isPresent:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
ldc "VertxTestContext"
ldc Lio/vertx/junit5/VertxExtension$ContextList;
invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.remove:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
checkcast io.vertx.junit5.VertxExtension$ContextList
astore 2
start local 2 3: aload 2
ifnull 33
4: aload 2
invokevirtual io.vertx.junit5.VertxExtension$ContextList.iterator:()Ljava/util/Iterator;
astore 4
goto 32
StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList top java.util.Iterator
StackMap stack:
5: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.junit5.VertxTestContext
astore 3
start local 3 6: bipush 30
istore 5
start local 5 7: getstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
astore 6
start local 6 8: aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getTestMethod:()Ljava/util/Optional;
astore 7
start local 7 9: aload 7
invokevirtual java.util.Optional.isPresent:()Z
ifeq 14
aload 7
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
ldc Lio/vertx/junit5/Timeout;
invokevirtual java.lang.reflect.Method.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 14
10: aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getRequiredTestMethod:()Ljava/lang/reflect/Method;
ldc Lio/vertx/junit5/Timeout;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast io.vertx.junit5.Timeout
astore 8
start local 8 11: aload 8
invokeinterface io.vertx.junit5.Timeout.value:()I
istore 5
12: aload 8
invokeinterface io.vertx.junit5.Timeout.timeUnit:()Ljava/util/concurrent/TimeUnit;
astore 6
end local 8 13: goto 18
StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList io.vertx.junit5.VertxTestContext java.util.Iterator int java.util.concurrent.TimeUnit java.util.Optional
StackMap stack:
14: aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getRequiredTestClass:()Ljava/lang/Class;
ldc Lio/vertx/junit5/Timeout;
invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 18
15: aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getRequiredTestClass:()Ljava/lang/Class;
ldc Lio/vertx/junit5/Timeout;
invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast io.vertx.junit5.Timeout
astore 8
start local 8 16: aload 8
invokeinterface io.vertx.junit5.Timeout.value:()I
istore 5
17: aload 8
invokeinterface io.vertx.junit5.Timeout.timeUnit:()Ljava/util/concurrent/TimeUnit;
astore 6
end local 8 18: StackMap locals:
StackMap stack:
aload 3
iload 5
i2l
aload 6
invokevirtual io.vertx.junit5.VertxTestContext.awaitCompletion:(JLjava/util/concurrent/TimeUnit;)Z
ifeq 24
19: aload 3
invokevirtual io.vertx.junit5.VertxTestContext.failed:()Z
ifeq 32
20: aload 3
invokevirtual io.vertx.junit5.VertxTestContext.causeOfFailure:()Ljava/lang/Throwable;
astore 8
start local 8 21: aload 8
instanceof java.lang.Exception
ifeq 23
22: aload 8
checkcast java.lang.Exception
athrow
23: StackMap locals: java.lang.Throwable
StackMap stack:
new java.lang.AssertionError
dup
aload 8
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 8 24: StackMap locals:
StackMap stack:
ldc "The test execution timed out. Make sure your asynchronous code includes calls to either VertxTestContext#completeNow(), VertxTestContext#failNow() or Checkpoint#flag()"
astore 8
start local 8 25: aload 3
invokevirtual io.vertx.junit5.VertxTestContext.unsatisfiedCheckpointCallSites:()Ljava/util/Set;
26: invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
27: invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
io/vertx/junit5/VertxExtension.lambda$2(Ljava/lang/StackTraceElement;)Ljava/lang/String; (6)
(Ljava/lang/StackTraceElement;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
28: ldc "\n"
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
29: astore 9
start local 9 30: new java.lang.StringBuilder
dup
aload 8
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\n\nUnsatisfied checkpoints diagnostics:\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
31: new java.util.concurrent.TimeoutException
dup
aload 8
invokespecial java.util.concurrent.TimeoutException.<init>:(Ljava/lang/String;)V
athrow
end local 9 end local 8 end local 7 end local 6 end local 5 end local 3 32: StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
33: StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList
StackMap stack:
aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
invokevirtual java.util.Optional.isPresent:()Z
ifeq 35
34: aload 0
aload 1
invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast org.junit.jupiter.api.extension.ExtensionContext
invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
35: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Lio/vertx/junit5/VertxExtension;
0 36 1 extensionContext Lorg/junit/jupiter/api/extension/ExtensionContext;
3 36 2 currentContexts Lio/vertx/junit5/VertxExtension$ContextList;
6 32 3 context Lio/vertx/junit5/VertxTestContext;
7 32 5 timeoutDuration I
8 32 6 timeoutUnit Ljava/util/concurrent/TimeUnit;
9 32 7 testMethod Ljava/util/Optional<Ljava/lang/reflect/Method;>;
11 13 8 annotation Lio/vertx/junit5/Timeout;
16 18 8 annotation Lio/vertx/junit5/Timeout;
21 24 8 throwable Ljava/lang/Throwable;
25 32 8 message Ljava/lang/String;
30 32 9 unsatisfiedCheckpointsDiagnosis Ljava/lang/String;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
extensionContext
private static io.vertx.junit5.ScopedObject lambda$0(io.vertx.junit5.VertxExtensionParameterProvider, org.junit.jupiter.api.extension.ExtensionContext, org.junit.jupiter.api.extension.ParameterContext, java.lang.String);
descriptor: (Lio/vertx/junit5/VertxExtensionParameterProvider;Lorg/junit/jupiter/api/extension/ExtensionContext;Lorg/junit/jupiter/api/extension/ParameterContext;Ljava/lang/String;)Lio/vertx/junit5/ScopedObject;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=4, args_size=4
start local 3 0: new io.vertx.junit5.ScopedObject
dup
1: aload 0
aload 1
aload 2
invokeinterface io.vertx.junit5.VertxExtensionParameterProvider.newInstance:(Lorg/junit/jupiter/api/extension/ExtensionContext;Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Object;
2: aload 0
invokeinterface io.vertx.junit5.VertxExtensionParameterProvider.parameterClosingConsumer:()Lio/vertx/junit5/ParameterClosingConsumer;
3: invokespecial io.vertx.junit5.ScopedObject.<init>:(Ljava/lang/Object;Lio/vertx/junit5/ParameterClosingConsumer;)V
4: areturn
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 5 3 key Ljava/lang/String;
private static io.vertx.junit5.VertxExtension$ContextList lambda$1(java.lang.String);
descriptor: (Ljava/lang/String;)Lio/vertx/junit5/VertxExtension$ContextList;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new io.vertx.junit5.VertxExtension$ContextList
dup
invokespecial io.vertx.junit5.VertxExtension$ContextList.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 key Ljava/lang/String;
private static java.lang.String lambda$2(java.lang.StackTraceElement);
descriptor: (Ljava/lang/StackTraceElement;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "-> checkpoint in file "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StackTraceElement.getFileName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " line "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StackTraceElement.getLineNumber:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/StackTraceElement;
}
SourceFile: "VertxExtension.java"
NestMembers:
io.vertx.junit5.VertxExtension$ContextList
InnerClasses:
private ContextList = io.vertx.junit5.VertxExtension$ContextList of io.vertx.junit5.VertxExtension
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public Namespace = org.junit.jupiter.api.extension.ExtensionContext$Namespace of org.junit.jupiter.api.extension.ExtensionContext
public abstract Store = org.junit.jupiter.api.extension.ExtensionContext$Store of org.junit.jupiter.api.extension.ExtensionContext