Class FieldInitializer.ParameterizedConstructorInstantiator

  • All Implemented Interfaces:
    FieldInitializer.ConstructorInstantiator
    Enclosing class:
    FieldInitializer

    static class FieldInitializer.ParameterizedConstructorInstantiator
    extends java.lang.Object
    implements FieldInitializer.ConstructorInstantiator
    Constructor instantiating strategy for parameterized constructors.

    Choose the constructor with the highest number of parameters, then call the ConstructorArgResolver to get actual argument instances. If the argResolver fail, then a technical MockitoException is thrown is thrown. Otherwise the instance is created with the resolved arguments.

    • Field Detail

      • testClass

        private final java.lang.Object testClass
      • field

        private final java.lang.reflect.Field field
      • byParameterNumber

        private final java.util.Comparator<java.lang.reflect.Constructor<?>> byParameterNumber
    • Constructor Detail

      • ParameterizedConstructorInstantiator

        ParameterizedConstructorInstantiator​(java.lang.Object testClass,
                                             java.lang.reflect.Field field,
                                             FieldInitializer.ConstructorArgumentResolver argumentResolver)
        Internal, checks are done by FieldInitializer. Fields are assumed to be accessible.
    • Method Detail

      • checkParameterized

        private void checkParameterized​(java.lang.reflect.Constructor<?> constructor,
                                        java.lang.reflect.Field field)
      • biggestConstructor

        private java.lang.reflect.Constructor<?> biggestConstructor​(java.lang.Class<?> clazz)