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
assertRecursive(callers, false);
        helper.assertCalls(expectedCallers, callers);
        
        Collection expectedCallersSecondLevel= new ArrayList();
        expectedCallersSecondLevel.add(innerMethod1);
        MethodWrapper innerMethod2Wrapper= helper.findMethodWrapper(innerMethod2, callers);
        helper.assertCalls(expectedCallersSecondLevel, innerMethod2Wrapper.getCalls(new NullProgressMonitor()));
    }
    /**
     * Tests callees that exits an inner class  
     */
    public void testInnerClassCalleesExiting() throws Exception {
        helper.createInnerClass();
        IMethod someMethod= helper.getType1().getMethod("outerMethod1", EMPTY);
        IMethod innerMethod1= helper.getType1().getType("Inner").getMethod("innerMethod1", EMPTY);
        IMethod innerMethod2= helper.getType1().getType("Inner").getMethod("innerMethod2", EMPTY);
        Collection expectedCallers= new ArrayList();
        expectedCallers.add(innerMethod1);
        MethodWrapper wrapper= CallHierarchy.getDefault().getCalleeRoot(innerMethod2);
        MethodWrapper[] callers= wrapper.getCalls(new NullProgressMonitor());
        assertRecursive(callers, false);
        helper.assertCalls(expectedCallers, callers);
        
        Collection expectedCallersSecondLevel= new ArrayList();
        expectedCallersSecondLevel.add(someMethod);
        MethodWrapper innerMethod1Wrapper= helper.findMethodWrapper(innerMethod1, callers);
        helper.assertCalls(expectedCallersSecondLevel, innerMethod1Wrapper.getCalls(new NullProgressMonitor()));
    }
    /**
     * Tests calls that origin from an inner class