What is the different between projectScope and allScope?

I had a bug in the junit plugin due to its inability to find the PsiClass for junit.framework.TestCase.
It would find it if I used the deprecated PsiManager.findClass(String) but would not find it when using

<![CDATA[
psiFile = event.getDataContext().getData("psi.File");
editor = event.getDataContext().getData("editor");
testedPsiClass = psiFile.findElementAt(editor.getCaretModel().getOffset());
scope = GlobalSearchScope.projectScope(testedPsiClass.getManager().getProject());
testedPsiClass.getManager().findClass("junit.framework.TestCase", scope);
]]>


So I used all scopes possible using either the event project or the class found under the cursor (like previously shown). Here is what I found:
Does find
GlobalSearchScope.projectScope and
PsiClass.getUseScope

Does not find
GlobalSearchScope.allScope and
PsiClass.getResolveScope

Could you please tell me what all these scope correspond to and I promise I will document it on intellij.org

Jacques

Please sign in to leave a comment.