@VisibleForTesting
    static List<NamedArgument> getNamedArguments(Statement base, FrameworkMethod method, Object target) {
        Executable constructorOrMethod = method.getMethod();

        List<Object> arguments = Collections.emptyList();

        if (DATAPROVIDER_FRAMEWORK_METHOD.equals(method.getClass().getCanonicalName())) {
            arguments = getArgumentsFrom(method, "parameters");
        }

        if (JUNITPARAMS_STATEMENT.equals(base.getClass().getCanonicalName())) {
            arguments = getArgumentsFrom(base, "params");
        }

        if (isParameterizedTest(target)) {
            Constructor<?> constructor = getOnlyConstructor(target.getClass());
            constructorOrMethod = constructor;
            arguments = getArgumentsFrom(constructor, target);
        }

        return ParameterNameUtil.mapArgumentsWithParameterNames(constructorOrMethod, arguments);
    }
Returns the ScenarioBase instance of this rule
jgiven-junit/src/main/java/com/tngtech/jgiven/junit/JGivenMethodRule.java