Class AbstractJsonArgumentsProvider<A extends Annotation>

java.lang.Object
org.junitpioneer.jupiter.json.AbstractJsonArgumentsProvider<A>
All Implemented Interfaces:
Consumer<A>, org.junit.jupiter.params.provider.ArgumentsProvider, org.junit.jupiter.params.support.AnnotationConsumer<A>, CartesianArgumentsProvider, CartesianParameterArgumentsProvider<Object>
Direct Known Subclasses:
AbstractJsonSourceBasedArgumentsProvider, JsonInlineArgumentsProvider

abstract class AbstractJsonArgumentsProvider<A extends Annotation> extends Object implements org.junit.jupiter.params.provider.ArgumentsProvider, org.junit.jupiter.params.support.AnnotationConsumer<A>, CartesianParameterArgumentsProvider<Object>
Provides arguments from JSON files specified with JsonFileSource.
  • Field Details

  • Constructor Details

    • AbstractJsonArgumentsProvider

      AbstractJsonArgumentsProvider()
  • Method Details

    • provideArguments

      public Stream<? extends org.junit.jupiter.params.provider.Arguments> provideArguments(org.junit.jupiter.api.extension.ExtensionContext context)
      Specified by:
      provideArguments in interface org.junit.jupiter.params.provider.ArgumentsProvider
    • provideArguments

      public Stream<Object> provideArguments(org.junit.jupiter.api.extension.ExtensionContext context, Parameter parameter) throws Exception
      Description copied from interface: CartesianParameterArgumentsProvider
      Provides a Stream of arguments that needs to be used for a CartesianTest parameter.
      Specified by:
      provideArguments in interface CartesianParameterArgumentsProvider<A extends Annotation>
      Parameters:
      context - the current extension context
      parameter - the parameter for which the arguments have to be provided
      Returns:
      a stream of arguments
      Throws:
      Exception
    • provideNodes

      private Stream<Node> provideNodes(org.junit.jupiter.api.extension.ExtensionContext context)
    • provideNodes

      protected abstract Stream<Node> provideNodes(org.junit.jupiter.api.extension.ExtensionContext context, JsonConverter jsonConverter)
    • createArgumentForCartesianProvider

      private static Object createArgumentForCartesianProvider(Parameter parameter, Node node)
    • createArguments

      private static org.junit.jupiter.params.provider.Arguments createArguments(Method method, Node node)
    • createArgumentsForMethod

      private static org.junit.jupiter.params.provider.Arguments createArgumentsForMethod(Method method, Node node)