### Question:
Metadata { Metadata() { } Metadata(); static MetadataClassInfo getMeta(Class<T> clazz, Class<? extends MetadataClassInfo> metaClass); static MetadataClassInfo getMeta(Class<T> clazz);  }### Answer:
@Test public void testMetadata() { final MetadataClassInfo meta = getMeta(TestClass.class); assertSame(meta, getMeta(TestClass.class)); assertThat(meta.getAnnotatedMethods(Processor.class).length, is(4)); assertThat(meta.getMethodsByParamTypes(Processor.class, Integer.class).size(), is(1)); assertThat(meta.getMethodsByParamTypes(Processor.class, String.class, Integer.class).size(), is(2)); assertThat(meta.getMethodsByParamTypes(Processor.class, Float.class).isEmpty(), is(true)); }