mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
throw FileComparisonFailure in CodeInsightTestCase.checkResultByFile to make testdata editable
This commit is contained in:
@@ -41,6 +41,7 @@ import com.intellij.openapi.fileTypes.FileTypeManager;
|
||||
import com.intellij.openapi.roots.ContentEntry;
|
||||
import com.intellij.openapi.roots.ModifiableRootModel;
|
||||
import com.intellij.openapi.roots.ModuleRootManager;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.openapi.vfs.*;
|
||||
@@ -51,6 +52,7 @@ import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.PsiPackage;
|
||||
import com.intellij.psi.impl.source.PostprocessReformattingAspect;
|
||||
import com.intellij.psi.search.ProjectScope;
|
||||
import com.intellij.rt.execution.junit.FileComparisonFailure;
|
||||
import com.intellij.testFramework.*;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
@@ -459,25 +461,24 @@ public abstract class CodeInsightTestCase extends PsiTestCase {
|
||||
VirtualFile vFile = findVirtualFile(filePath);
|
||||
|
||||
VfsTestUtil.assertFilePathEndsWithCaseSensitivePath(vFile, filePath);
|
||||
String ft;
|
||||
String expectedText;
|
||||
try {
|
||||
ft = VfsUtilCore.loadText(vFile);
|
||||
expectedText = VfsUtilCore.loadText(vFile);
|
||||
}
|
||||
catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
||||
String fileText = StringUtil.convertLineSeparators(ft);
|
||||
Document document = EditorFactory.getInstance().createDocument(fileText);
|
||||
expectedText = StringUtil.convertLineSeparators(expectedText);
|
||||
Document document = EditorFactory.getInstance().createDocument(expectedText);
|
||||
|
||||
EditorTestUtil.CaretAndSelectionState caretState = EditorTestUtil.extractCaretAndSelectionMarkers(document);
|
||||
|
||||
String newFileText = document.getText();
|
||||
String newFileText1 = newFileText;
|
||||
expectedText = document.getText();
|
||||
if (stripTrailingSpaces) {
|
||||
Document document1 = EditorFactory.getInstance().createDocument(newFileText);
|
||||
Document document1 = EditorFactory.getInstance().createDocument(expectedText);
|
||||
((DocumentImpl)document1).stripTrailingSpaces(getProject());
|
||||
newFileText1 = document1.getText();
|
||||
expectedText = document1.getText();
|
||||
}
|
||||
|
||||
if (myEditor instanceof EditorWindow) {
|
||||
@@ -485,10 +486,11 @@ public abstract class CodeInsightTestCase extends PsiTestCase {
|
||||
}
|
||||
myFile = PsiDocumentManager.getInstance(getProject()).getPsiFile(myEditor.getDocument());
|
||||
|
||||
String text = myFile.getText();
|
||||
text = StringUtil.convertLineSeparators(text);
|
||||
String actualText = StringUtil.convertLineSeparators(myFile.getText());
|
||||
|
||||
assertEquals("Text mismatch in file " + filePath, newFileText1, text);
|
||||
if (!Comparing.equal(expectedText, actualText)) {
|
||||
throw new FileComparisonFailure("Text mismatch in file " + filePath, expectedText, actualText, vFile.getPath());
|
||||
}
|
||||
|
||||
EditorTestUtil.verifyCaretAndSelectionState(myEditor, caretState);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user