Got rid of protected fields.
This commit is contained in:
committed by
Pavel V. Talanov
parent
d5e86c38de
commit
aec54bcbac
@@ -21,6 +21,7 @@ import com.intellij.openapi.roots.ModifiableRootModel;
|
|||||||
import com.intellij.openapi.roots.ModuleRootManager;
|
import com.intellij.openapi.roots.ModuleRootManager;
|
||||||
import com.intellij.openapi.roots.OrderRootType;
|
import com.intellij.openapi.roots.OrderRootType;
|
||||||
import com.intellij.openapi.roots.libraries.Library;
|
import com.intellij.openapi.roots.libraries.Library;
|
||||||
|
import com.intellij.openapi.util.ThrowableComputable;
|
||||||
import com.intellij.openapi.util.io.FileUtil;
|
import com.intellij.openapi.util.io.FileUtil;
|
||||||
import com.intellij.openapi.vfs.LocalFileSystem;
|
import com.intellij.openapi.vfs.LocalFileSystem;
|
||||||
import com.intellij.openapi.vfs.VfsUtilCore;
|
import com.intellij.openapi.vfs.VfsUtilCore;
|
||||||
@@ -45,8 +46,6 @@ public abstract class AbstractNavigateToLibraryTest extends PlatformTestCase {
|
|||||||
protected static final String SOURCES_PATH = TEST_DATA_PATH + "/library";
|
protected static final String SOURCES_PATH = TEST_DATA_PATH + "/library";
|
||||||
protected static final String SRC_DIR_NAME = "src";
|
protected static final String SRC_DIR_NAME = "src";
|
||||||
private static File tempDirWithCompiled;
|
private static File tempDirWithCompiled;
|
||||||
protected VirtualFile libraryDir;
|
|
||||||
protected VirtualFile librarySourceDir;
|
|
||||||
|
|
||||||
protected abstract boolean isWithSources();
|
protected abstract boolean isWithSources();
|
||||||
|
|
||||||
@@ -70,16 +69,13 @@ public abstract class AbstractNavigateToLibraryTest extends PlatformTestCase {
|
|||||||
super.setUp();
|
super.setUp();
|
||||||
final VirtualFile baseDir = getProject().getBaseDir();
|
final VirtualFile baseDir = getProject().getBaseDir();
|
||||||
assertNotNull(baseDir);
|
assertNotNull(baseDir);
|
||||||
ApplicationManager.getApplication().runWriteAction(new Runnable() {
|
|
||||||
|
final VirtualFile libraryDir = ApplicationManager.getApplication().runWriteAction(new ThrowableComputable<VirtualFile, IOException>() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public VirtualFile compute() throws IOException {
|
||||||
try {
|
VirtualFile libraryDir = baseDir.createChildDirectory(this, "lib");
|
||||||
libraryDir = baseDir.createChildDirectory(this, "lib");
|
baseDir.createChildDirectory(this, SRC_DIR_NAME);
|
||||||
baseDir.createChildDirectory(this, SRC_DIR_NAME);
|
return libraryDir;
|
||||||
}
|
|
||||||
catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -93,7 +89,7 @@ public abstract class AbstractNavigateToLibraryTest extends PlatformTestCase {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
librarySourceDir = LocalFileSystem.getInstance().findFileByPath(SOURCES_PATH);
|
final VirtualFile librarySourceDir = LocalFileSystem.getInstance().findFileByPath(SOURCES_PATH);
|
||||||
assertNotNull(librarySourceDir);
|
assertNotNull(librarySourceDir);
|
||||||
|
|
||||||
FileUtil.copyDir(getTempDirWithCompiled(), new File(libraryDir.getPath()));
|
FileUtil.copyDir(getTempDirWithCompiled(), new File(libraryDir.getPath()));
|
||||||
|
|||||||
@@ -19,11 +19,16 @@ package org.jetbrains.jet.plugin.libraries;
|
|||||||
import com.beust.jcommander.internal.Maps;
|
import com.beust.jcommander.internal.Maps;
|
||||||
import com.intellij.openapi.editor.Document;
|
import com.intellij.openapi.editor.Document;
|
||||||
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||||
|
import com.intellij.openapi.roots.LibraryOrderEntry;
|
||||||
|
import com.intellij.openapi.roots.ModuleRootManager;
|
||||||
|
import com.intellij.openapi.roots.OrderEntry;
|
||||||
|
import com.intellij.openapi.roots.OrderRootType;
|
||||||
import com.intellij.openapi.util.TextRange;
|
import com.intellij.openapi.util.TextRange;
|
||||||
import com.intellij.openapi.util.text.StringUtil;
|
import com.intellij.openapi.util.text.StringUtil;
|
||||||
import com.intellij.openapi.vfs.VirtualFile;
|
import com.intellij.openapi.vfs.VirtualFile;
|
||||||
import com.intellij.psi.util.PsiTreeUtil;
|
import com.intellij.psi.util.PsiTreeUtil;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
import org.jetbrains.jet.lang.psi.JetDeclaration;
|
import org.jetbrains.jet.lang.psi.JetDeclaration;
|
||||||
import org.jetbrains.jet.lang.psi.JetFile;
|
import org.jetbrains.jet.lang.psi.JetFile;
|
||||||
|
|
||||||
@@ -116,8 +121,21 @@ public class NavigateToDecompiledLibraryTest extends AbstractNavigateToLibraryTe
|
|||||||
return document.getText();
|
return document.getText();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nullable
|
||||||
|
private LibraryOrderEntry findOurTestLibrary() {
|
||||||
|
for (OrderEntry orderEntry : ModuleRootManager.getInstance(getModule()).getOrderEntries()) {
|
||||||
|
if (orderEntry instanceof LibraryOrderEntry) {
|
||||||
|
return (LibraryOrderEntry) orderEntry;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
private VirtualFile getClassFile() {
|
private VirtualFile getClassFile() {
|
||||||
VirtualFile packageDir = libraryDir.findFileByRelativePath(PACKAGE.replace(".", "/"));
|
LibraryOrderEntry library = findOurTestLibrary();
|
||||||
|
assertNotNull(library);
|
||||||
|
|
||||||
|
VirtualFile packageDir = library.getFiles(OrderRootType.CLASSES)[0].findFileByRelativePath(PACKAGE.replace(".", "/"));
|
||||||
assertNotNull(packageDir);
|
assertNotNull(packageDir);
|
||||||
VirtualFile classFile = packageDir.findChild(getTestName(false) + ".class");
|
VirtualFile classFile = packageDir.findChild(getTestName(false) + ".class");
|
||||||
assertNotNull(classFile);
|
assertNotNull(classFile);
|
||||||
|
|||||||
@@ -19,15 +19,14 @@ package org.jetbrains.jet.plugin.libraries;
|
|||||||
import com.intellij.openapi.editor.Document;
|
import com.intellij.openapi.editor.Document;
|
||||||
import com.intellij.openapi.editor.EditorFactory;
|
import com.intellij.openapi.editor.EditorFactory;
|
||||||
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||||
|
import com.intellij.openapi.roots.ProjectFileIndex;
|
||||||
import com.intellij.openapi.util.Pair;
|
import com.intellij.openapi.util.Pair;
|
||||||
import com.intellij.openapi.vfs.VfsUtilCore;
|
|
||||||
import com.intellij.openapi.vfs.VirtualFile;
|
import com.intellij.openapi.vfs.VirtualFile;
|
||||||
import com.intellij.psi.PsiDocumentManager;
|
import com.intellij.psi.PsiDocumentManager;
|
||||||
import com.intellij.psi.PsiElement;
|
import com.intellij.psi.PsiElement;
|
||||||
import com.intellij.psi.PsiFile;
|
import com.intellij.psi.PsiFile;
|
||||||
import com.intellij.psi.PsiReference;
|
import com.intellij.psi.PsiReference;
|
||||||
import com.intellij.util.containers.MultiMap;
|
import com.intellij.util.containers.MultiMap;
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
import org.jetbrains.jet.JetTestUtils;
|
import org.jetbrains.jet.JetTestUtils;
|
||||||
import org.jetbrains.jet.plugin.references.JetPsiReference;
|
import org.jetbrains.jet.plugin.references.JetPsiReference;
|
||||||
|
|
||||||
@@ -120,7 +119,7 @@ public class NavigateToLibrarySourceTest extends AbstractNavigateToLibraryTest {
|
|||||||
if (targetNavPsiFile == null) continue;
|
if (targetNavPsiFile == null) continue;
|
||||||
VirtualFile targetNavFile = targetNavPsiFile.getVirtualFile();
|
VirtualFile targetNavFile = targetNavPsiFile.getVirtualFile();
|
||||||
if (targetNavFile == null) continue;
|
if (targetNavFile == null) continue;
|
||||||
if (VfsUtilCore.isAncestor(librarySourceDir, targetNavFile, true)) {
|
if (ProjectFileIndex.SERVICE.getInstance(getProject()).isInLibrarySource(targetNavFile)) {
|
||||||
referenceContainersToReferences.put(ref.getElement(), (JetPsiReference)ref);
|
referenceContainersToReferences.put(ref.getElement(), (JetPsiReference)ref);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -128,16 +127,6 @@ public class NavigateToLibrarySourceTest extends AbstractNavigateToLibraryTest {
|
|||||||
return referenceContainersToReferences.values();
|
return referenceContainersToReferences.values();
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
|
||||||
private String getRelativePath(@NotNull PsiFile librarySourceFile) {
|
|
||||||
VirtualFile virtualFile = librarySourceFile.getVirtualFile();
|
|
||||||
if (virtualFile == null) {
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
String relativePath = VfsUtilCore.getRelativePath(virtualFile, librarySourceDir, '/');
|
|
||||||
return relativePath == null ? "" : relativePath;
|
|
||||||
}
|
|
||||||
|
|
||||||
private String getActualAnnotatedLibraryCode() {
|
private String getActualAnnotatedLibraryCode() {
|
||||||
MultiMap<PsiFile, Pair<Integer, Integer>> filesToNumbersAndOffsets = new MultiMap<PsiFile, Pair<Integer, Integer>>();
|
MultiMap<PsiFile, Pair<Integer, Integer>> filesToNumbersAndOffsets = new MultiMap<PsiFile, Pair<Integer, Integer>>();
|
||||||
int refNumber = 1;
|
int refNumber = 1;
|
||||||
@@ -157,7 +146,7 @@ public class NavigateToLibrarySourceTest extends AbstractNavigateToLibraryTest {
|
|||||||
Collections.sort(files, new Comparator<PsiFile>() {
|
Collections.sort(files, new Comparator<PsiFile>() {
|
||||||
@Override
|
@Override
|
||||||
public int compare(PsiFile o1, PsiFile o2) {
|
public int compare(PsiFile o1, PsiFile o2) {
|
||||||
return getRelativePath(o1).compareTo(getRelativePath(o2));
|
return o1.getName().compareTo(o2.getName());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -191,7 +180,7 @@ public class NavigateToLibrarySourceTest extends AbstractNavigateToLibraryTest {
|
|||||||
Document annotated = EditorFactory.getInstance().createDocument(resultForFile);
|
Document annotated = EditorFactory.getInstance().createDocument(resultForFile);
|
||||||
String filePart = annotated.getText().substring(annotated.getLineStartOffset(minLine),
|
String filePart = annotated.getText().substring(annotated.getLineStartOffset(minLine),
|
||||||
annotated.getLineEndOffset(maxLine));
|
annotated.getLineEndOffset(maxLine));
|
||||||
result.append(" ").append(getRelativePath(file)).append("\n");
|
result.append(" ").append(file.getName()).append("\n");
|
||||||
result.append(filePart).append("\n");
|
result.append(filePart).append("\n");
|
||||||
}
|
}
|
||||||
return result.toString();
|
return result.toString();
|
||||||
|
|||||||
Reference in New Issue
Block a user