@@ -0,0 +1,1695 @@
+package com.intellij.psi;%0A%0Aimport com.intellij.core.CoreJavaFileManager;%0Aimport com.intellij.ide.highlighter.JavaFileType;%0Aimport com.intellij.openapi.vfs.VirtualFile;%0Aimport com.intellij.psi.search.GlobalSearchScope;%0Aimport com.intellij.testFramework.PsiTestCase;%0Aimport com.intellij.testFramework.PsiTestUtil;%0A%0A%0Apublic class NotNullInnerClass extends PsiTestCase %7B%0A%0A  public void testNotNullInnerClass() throws Exception %7B%0A    VirtualFile root = PsiTestUtil.createTestProjectStructure(myProject, myModule, myFilesToDelete);%0A    VirtualFile pkg = root.createChildDirectory(this, %22foo%22);%0A    PsiDirectory dir = myPsiManager.findDirectory(pkg);%0A    assertNotNull(dir);%0A    String text = %22package foo;%5Cn%5Cn%22 +%0A                  %22public class Nested %7B%5Cn%22 +%0A                  %22public class InnerGeneral %7B%7D%5Cn%22 +%0A                  %22public class Inner$ %7B%7D%5Cn%22 +%0A                  %22%5Cn%22 +%0A                  %22public Inner$ inner() %7B%5Cn%22 +%0A                  %22   return  new Inner$();%5Cn%22 +%0A                  %22%7D%5Cn%22 +%0A                  %22%5Cn%22 +%0A                  %22%7D%22;%0A    PsiElement created = dir.add(PsiFileFactory.getInstance(getProject()).createFileFromText(%22Nested.java%22, JavaFileType.INSTANCE, text));%0A%0A    GlobalSearchScope scope = GlobalSearchScope.allScope(getProject());%0A    CoreJavaFileManager manager = new CoreJavaFileManager(myPsiManager);%0A    manager.addToClasspath(root);%0A%0A    PsiClass clazz = manager.findClass(%22foo.Nested%22, scope);%0A    assertNotNull(clazz);%0A%0A    PsiClass clazzInnerGeneral = manager.findClass(%22foo.Nested.InnerGeneral%22, scope);%0A    assertNotNull(clazzInnerGeneral);%0A%0A    PsiClass clazzInner$ = manager.findClass(%22foo.Nested.Inner$%22, scope);%0A    assertNotNull(clazzInner$);%0A  %7D%0A%0A%7D%0A

Test for pull request "CoreJavaFileManager.findClass: properly resolve $ in inner class names"