mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-149752 IJ does not fetch schema
This commit is contained in:
@@ -15,13 +15,17 @@
|
||||
*/
|
||||
package com.intellij.codeInsight.daemon.quickFix;
|
||||
|
||||
import com.intellij.codeInsight.daemon.impl.HighlightInfo;
|
||||
import com.intellij.codeInsight.intention.IntentionAction;
|
||||
import com.intellij.ide.highlighter.XmlFileType;
|
||||
import com.intellij.javaee.ExternalResourceManager;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.testFramework.fixtures.LightPlatformCodeInsightFixtureTestCase;
|
||||
import com.intellij.xml.XmlBundle;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Dmitry Avdeev
|
||||
*/
|
||||
@@ -36,10 +40,28 @@ public class RealFetchTest extends LightPlatformCodeInsightFixtureTestCase {
|
||||
assertNotNull(intention);
|
||||
intention.invoke(getProject(), myFixture.getEditor(), myFixture.getFile());
|
||||
assertNotSame(url, ExternalResourceManager.getInstance().getResourceLocation(url, getProject()));
|
||||
ApplicationManager.getApplication().runWriteAction(new Runnable() {
|
||||
public void run() {
|
||||
ExternalResourceManager.getInstance().removeResource(url);
|
||||
}
|
||||
ApplicationManager.getApplication().runWriteAction(() -> {
|
||||
ExternalResourceManager.getInstance().removeResource(url);
|
||||
});
|
||||
}
|
||||
|
||||
public void testOverwriteFetchDtd() throws Exception {
|
||||
|
||||
final String url = "http://helpserver.labs.intellij.net/help/images.dtd";
|
||||
VirtualFile virtualFile = myFixture.getTempDirFixture().createFile("images.dtd", "");
|
||||
ApplicationManager.getApplication().runWriteAction(() -> {
|
||||
ExternalResourceManager.getInstance().addResource(url, virtualFile.getPath());
|
||||
});
|
||||
|
||||
myFixture.configureByText(XmlFileType.INSTANCE, "<!DOCTYPE images SYSTEM \"<error descr=\"Resource registered by this uri is not recognized (Settings | Languages & Frameworks | Schemas and DTDs)\">http://helpserver.labs.intellij.net/help/ima<caret>ges.dtd</error>\"><images> </images>");
|
||||
myFixture.testHighlighting();
|
||||
IntentionAction intention = myFixture.getAvailableIntention(XmlBundle.message("fetch.external.resource"));
|
||||
assertNotNull(intention);
|
||||
intention.invoke(getProject(), myFixture.getEditor(), myFixture.getFile());
|
||||
List<HighlightInfo> infos = myFixture.doHighlighting();
|
||||
assertEmpty(infos);
|
||||
ApplicationManager.getApplication().runWriteAction(() -> {
|
||||
ExternalResourceManager.getInstance().removeResource(url);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user