private Object[] paramsFromSource() {
    if (sourceClassUndefined()) return new Object[] {};

    Class<?> sourceClass = parametersAnnotation.source();

    return fillResultWithAllParamProviderMethods(sourceClass);
  }
 private boolean sourceClassUndefined() {
   return parametersAnnotation.source().isAssignableFrom(NullType.class);
 }
 private Object[] paramsFromValue() {
   Object[] params = parametersAnnotation.value();
   return params;
 }
  private Object[] paramsFromMethod() {
    String methodName = parametersAnnotation.method();
    if ("".equals(methodName)) methodName = defaultMethodName();

    return invokeMethodWithParams(methodName);
  }