void () { assertEquals( "(I)V", signature("void m(int i) {}")); assertEquals( "(J)V", signature("void m(long i) {}")); assertEquals( "(B)V", signature("void m(byte i) {}")); assertEquals( "(Z)V", signature("void m(boolean i) {}")); assertEquals( "(D)V", signature("void m(double i) {}")); assertEquals( "(F)V", signature("void m(float i) {}")); assertEquals( "(C)V", signature("void m(char i) {}")); assertEquals( "(S)V", signature("void m(short i) {}")); assertEquals( "(SI)V", signature("void m(short s, int i) {}")); assertEquals( "([S[I)V", signature("void m(short[] s, int[] i) {}")); assertEquals( "(Ljava/lang/Object;)V", signature("void m(T t) {}", "<T>")); assertEquals( "(Ljava/lang/String;)V", signature("void m(T t) {}", "<T extends String>")); assertEquals( "(Ljava/lang/String;)V", signature("<T extends String> void m(T t) {}")); assertEquals( "([Ljava/lang/Object;)V", signature("void m(T[] t) {}", "<T>")); assertEquals( "(Ljava/lang/Object;Ljava/lang/String;)V", signature("void m(T t, String s) {}", "<T>")); assertEquals( "(Ljava/lang/String;)Ljava/lang/String;", signature("String m(String s) { return \"str\"; }")); }