Bug 56732 Call Hierarchy doesn't show callees of method from anonymous type
3.0M8: Call Hierarchy doesn't show callees of method from anonymous type. Callees of m() are correctly shown: println(String) and Runnable. However, callees of run() are empty, although run() calls println(String). class A { void m() { System.out.println("before"); Runnable runnable= new Runnable() { public void run() { System.out.println("run"); } }; runnable.run(); } }
org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/core/CallHierarchyTest.java
*/
    public void testAnonymousInnerClassCallers() throws Exception {
        helper.createAnonymousInnerClass();
        
        IMethod someMethod= helper.getType1().getMethod("someMethod", EMPTY);
        IMethod result= helper.getType1().getField("anonClass").getType("", 1).getMethod("anotherMethod", EMPTY);
        Collection expectedCallers= new ArrayList();
        expectedCallers.add(result);
        MethodWrapper wrapper= CallHierarchy.getDefault().getCallerRoot(someMethod);
        MethodWrapper[] callers= wrapper.getCalls(new NullProgressMonitor());
        assertRecursive(callers, false);
        helper.assertCalls(expectedCallers, callers);
    }
    /**
     * Tests calls that origin from an inner class  
     */
    public void testAnonymousInnerClassOnInterfaceCallees() throws Exception {
    	 
        helper.createAnonymousInnerClass();
        
        IMethod method= helper.getType2().getMethod("anonymousOnInterface", EMPTY);
        MethodWrapper wrapper= CallHierarchy.getDefault().getCalleeRoot(method);
        MethodWrapper[] callers= wrapper.getCalls(new NullProgressMonitor());
        assertRecursive(callers, false);
        
        assertEquals("Wrong number of callees", 1, callers.length);
        IMember member= callers[0].getMember();
        assertTrue("Wrong member type (expected an instanceof IType)", member instanceof IType);
        assertEquals("Wrong member name", "Intf", member.getElementName());
    }