Package ru.vyarus.spock.jupiter.engine
Class ExtensionUtils
- java.lang.Object
-
- ru.vyarus.spock.jupiter.engine.ExtensionUtils
-
public final class ExtensionUtils extends java.lang.ObjectExtensions recognition logic. Mostly copy of jupiter implementation methods (with slight adoptions) to preserve exactly the same behaviour. Started as a subset oforg.junit.jupiter.engine.descriptor.ExtensionUtils, but also include some descriptors logic (descriptors concept itself is not required in spock context).- Since:
- 30.11.2021
-
-
Field Summary
Fields Modifier and Type Field Description static java.util.List<java.lang.Class<? extends org.junit.jupiter.api.extension.Extension>>SUPPORTED_EXTENSIONSstatic java.util.List<java.lang.Class<? extends org.junit.jupiter.api.extension.Extension>>UNSUPPORTED_EXTENSIONS
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringasLabel(java.lang.reflect.Executable executable)static ExtensionRegistrycreateMethodRegistry(ExtensionRegistry root, java.lang.reflect.Method method)static ExtensionRegistrycreateRegistry(java.lang.Class<?> testClass)static java.util.stream.Stream<java.lang.Class<? extends org.junit.jupiter.api.extension.Extension>>findClassExtensions(java.lang.Class<?> testClass)static voidregisterExtensionsFromExecutableParameters(ExtensionRegistry registrar, java.lang.reflect.Executable executable)Register extensions using the supplied registrar from parameters in the suppliedExecutable(i.e., aConstructororMethod) that are annotated with@ExtendWith.static voidregisterExtensionsFromFields(ExtensionRegistry registrar, java.lang.Class<?> clazz, java.lang.Object instance)Register extensions using the supplied registrar from fields in the supplied class that are annotated with@ExtendWithor@RegisterExtension.static java.lang.ObjectresolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, java.lang.reflect.Executable executable, AbstractContext context)
-
-
-
Field Detail
-
SUPPORTED_EXTENSIONS
public static final java.util.List<java.lang.Class<? extends org.junit.jupiter.api.extension.Extension>> SUPPORTED_EXTENSIONS
-
UNSUPPORTED_EXTENSIONS
public static final java.util.List<java.lang.Class<? extends org.junit.jupiter.api.extension.Extension>> UNSUPPORTED_EXTENSIONS
-
-
Method Detail
-
createRegistry
public static ExtensionRegistry createRegistry(java.lang.Class<?> testClass)
-
createMethodRegistry
public static ExtensionRegistry createMethodRegistry(ExtensionRegistry root, java.lang.reflect.Method method)
-
findClassExtensions
public static java.util.stream.Stream<java.lang.Class<? extends org.junit.jupiter.api.extension.Extension>> findClassExtensions(java.lang.Class<?> testClass)
-
registerExtensionsFromFields
public static void registerExtensionsFromFields(ExtensionRegistry registrar, java.lang.Class<?> clazz, java.lang.Object instance)
Register extensions using the supplied registrar from fields in the supplied class that are annotated with@ExtendWithor@RegisterExtension.The extensions will be sorted according to
@Ordersemantics prior to registration.- Parameters:
registrar- the registrar with which to register the extensions; nevernullclazz- the class or interface in which to find the fields; nevernullinstance- the instance of the supplied class; may benullwhen searching forstaticfields in the class
-
registerExtensionsFromExecutableParameters
public static void registerExtensionsFromExecutableParameters(ExtensionRegistry registrar, java.lang.reflect.Executable executable)
Register extensions using the supplied registrar from parameters in the suppliedExecutable(i.e., aConstructororMethod) that are annotated with@ExtendWith.- Parameters:
registrar- the registrar with which to register the extensions; nevernullexecutable- the constructor or method whose parameters should be searched; nevernull
-
resolveParameter
public static java.lang.Object resolveParameter(org.junit.jupiter.api.extension.ParameterContext parameterContext, java.lang.reflect.Executable executable, AbstractContext context)
-
asLabel
public static java.lang.String asLabel(java.lang.reflect.Executable executable)
- Parameters:
executable- executable- Returns:
- correct executable name
-
-