### Question:
AbstractMacro implements Macro<P>, Initializable { @Unstable public static MetaData getNonGeneratedContentMetaData(ContentDescriptor contentDescriptor) { MetaData metaData = new MetaData(); Type contentType; if (contentDescriptor != null) { contentType = contentDescriptor.getType(); } else { contentType = DefaultContentDescriptor.DEFAULT_CONTENT_TYPE; } String converted = ReflectionUtils.serializeType(contentType); metaData.addMetaData(MetaData.NON_GENERATED_CONTENT, converted); return metaData; } AbstractMacro(String name);  AbstractMacro(String name, String description);  AbstractMacro(String name, String description, ContentDescriptor contentDescriptor);  AbstractMacro(String name, String description, Class<?> parametersBeanClass);  AbstractMacro(String name, String description, ContentDescriptor contentDescriptor,
        Class<?> parametersBeanClass); @Override void initialize(); @Override int getPriority(); void setPriority(int priority); @Override MacroDescriptor getDescriptor(); @Override int compareTo(Macro<?> macro); @Unstable static MetaData getNonGeneratedContentMetaData(ContentDescriptor contentDescriptor); @Unstable static MetaData getNonGeneratedContentMetaData(Map<String, ParameterDescriptor> parameterDescriptorMap,
        String name); static final String DEFAULT_CATEGORY_FORMATTING; static final String DEFAULT_CATEGORY_DEVELOPMENT; static final String DEFAULT_CATEGORY_CONTENT; static final String DEFAULT_CATEGORY_NAVIGATION; static final String DEFAULT_CATEGORY_INTERNAL; static final String DEFAULT_CATEGORY_LAYOUT; }### Answer:
@Test public void getNonGeneratedMetadataForParameterCustomDescriptor() { MetaData nonGeneratedContentMetaData = macro3.getNonGeneratedContentMetaData("param1"); MetaData expectedMetadata = new MetaData(); expectedMetadata.addMetaData(MetaData.NON_GENERATED_CONTENT, "java.util.List<org.xwiki.rendering.block.Block>"); expectedMetadata.addMetaData(MetaData.PARAMETER_NAME, "param1"); assertEquals(expectedMetadata, nonGeneratedContentMetaData); nonGeneratedContentMetaData = macro3.getNonGeneratedContentMetaData("param2"); expectedMetadata = new MetaData(); expectedMetadata.addMetaData(MetaData.NON_GENERATED_CONTENT, "java.lang.String"); expectedMetadata.addMetaData(MetaData.PARAMETER_NAME, "param2"); assertEquals(expectedMetadata, nonGeneratedContentMetaData); nonGeneratedContentMetaData = macro3.getNonGeneratedContentMetaData("param3"); expectedMetadata = new MetaData(); expectedMetadata.addMetaData(MetaData.NON_GENERATED_CONTENT, "java.lang.String"); expectedMetadata.addMetaData(MetaData.PARAMETER_NAME, "param3"); assertEquals(expectedMetadata, nonGeneratedContentMetaData); }