@Override public String toString() { StringBuilder sb = new StringBuilder(); if (typeParams.size() > 0) { for (int i = 0;i < typeParams.size();i++) { sb.append(i > 0 ? ", " : "<"); sb.append(typeParams.get(i).getName()); } sb.append("> "); } sb.append(returnType.getName()); sb.append(' '); sb.append(getSignature().toString()); return sb.toString(); } }
@Test public void testOverloadedMethodFuture() throws Exception { ClassModel model = new GeneratorHelper().generateClass(InterfaceWithOverloadedFutureMethod.class); assertEquals(4, model.getMethods().size()); assertEquals(2, model.getMethodMap().size()); List<MethodInfo> closes = model.getMethodMap().get("close"); assertEquals(0, closes.get(0).getParams().size()); assertEquals(1, closes.get(1).getParams().size()); Signature closeSignature = closes.get(1).getSignature(); closeSignature.getParams().remove(0); assertEquals(closes.get(0).getSignature(), closeSignature); List<MethodInfo> foos = model.getMethodMap().get("foo"); assertEquals(1, foos.get(0).getParams().size()); assertEquals(2, foos.get(1).getParams().size()); Signature fooSignature = foos.get(1).getSignature(); fooSignature.getParams().remove(1); assertEquals(foos.get(0).getSignature(), fooSignature); }
@Test public void testSignature() throws Exception { ClassModel model = new GeneratorHelper().generateClass(MethodWithValidBasicParams.class); assertEquals(1, model.getMethods().size()); MethodInfo mi = model.getMethods().get(0); Signature s1 = mi.getSignature(); Signature s2 = mi.getSignature(); assertNotSame(s1, s2); assertEquals(s1, s2); assertEquals(s1.hashCode(), s2.hashCode()); assertEquals("methodWithBasicParams", s1.getName()); assertEquals(9, s1.getParams().size()); s1.getParams().remove(8); assertEquals(8, s1.getParams().size()); assertEquals(9, mi.getParams().size()); }