Class AutoCloseExtension
- java.lang.Object
-
- org.junit.jupiter.engine.extension.AutoCloseExtension
-
- All Implemented Interfaces:
org.junit.jupiter.api.extension.AfterAllCallback,org.junit.jupiter.api.extension.Extension,org.junit.jupiter.api.extension.TestInstancePreDestroyCallback
class AutoCloseExtension extends java.lang.Object implements org.junit.jupiter.api.extension.TestInstancePreDestroyCallback, org.junit.jupiter.api.extension.AfterAllCallbackAutoCloseExtensionis a JUnit Jupiter extension that closes resources if a field in a test class is annotated with@AutoClose.Consult the Javadoc for
@AutoClosefor details on the contract.- Since:
- 5.11
- See Also:
AutoClose
-
-
Field Summary
Fields Modifier and Type Field Description private static org.junit.platform.commons.logging.Loggerlogger
-
Constructor Summary
Constructors Constructor Description AutoCloseExtension()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidafterAll(org.junit.jupiter.api.extension.ExtensionContext context)private static voidcheckCondition(boolean condition, java.lang.String messageFormat, java.lang.reflect.Field field)private static voidcloseField(java.lang.reflect.Field field, java.lang.Object testInstance)private static voidcloseFields(java.lang.Class<?> testClass, java.lang.Object testInstance, ThrowableCollector throwableCollector)private static java.lang.StringgetQualifiedName(java.lang.reflect.Field field)private static voidinvokeCloseMethod(java.lang.reflect.Field field, java.lang.Object target, java.lang.String methodName)voidpreDestroyTestInstance(org.junit.jupiter.api.extension.ExtensionContext context)
-
-
-
Method Detail
-
preDestroyTestInstance
public void preDestroyTestInstance(org.junit.jupiter.api.extension.ExtensionContext context)
- Specified by:
preDestroyTestInstancein interfaceorg.junit.jupiter.api.extension.TestInstancePreDestroyCallback
-
afterAll
public void afterAll(org.junit.jupiter.api.extension.ExtensionContext context)
- Specified by:
afterAllin interfaceorg.junit.jupiter.api.extension.AfterAllCallback
-
closeFields
private static void closeFields(java.lang.Class<?> testClass, java.lang.Object testInstance, ThrowableCollector throwableCollector)
-
closeField
private static void closeField(java.lang.reflect.Field field, java.lang.Object testInstance) throws java.lang.Exception- Throws:
java.lang.Exception
-
invokeCloseMethod
private static void invokeCloseMethod(java.lang.reflect.Field field, java.lang.Object target, java.lang.String methodName) throws java.lang.Exception- Throws:
java.lang.Exception
-
checkCondition
private static void checkCondition(boolean condition, java.lang.String messageFormat, java.lang.reflect.Field field)
-
getQualifiedName
private static java.lang.String getQualifiedName(java.lang.reflect.Field field)
-
-