mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
json schema: correct file type definition, modify tests
This commit is contained in:
@@ -25,6 +25,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
public class JsonSchemaFileTypeFactory extends FileTypeFactory {
|
||||
@Override
|
||||
public void createFileTypes(@NotNull FileTypeConsumer consumer) {
|
||||
consumer.consume(JsonSchemaFileType.INSTANCE);
|
||||
consumer.consume(JsonSchemaFileType.INSTANCE, (String) null);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -217,13 +217,13 @@ public class JsonSchemaCrossReferencesTest extends CompletionTestCase {
|
||||
|
||||
instance.addSchema(inherited);
|
||||
|
||||
testIsSchemaFile(moduleFile, "localRefSchema.json");
|
||||
testIsSchemaFile(moduleFile, "referencingSchema.json");
|
||||
|
||||
try {
|
||||
ApplicationManager.getApplication().runWriteAction(() -> myFileTypeManager.associatePattern(JsonSchemaFileType.INSTANCE, "*Schema.json"));
|
||||
JsonSchemaService.Impl.get(getProject()).reset();
|
||||
|
||||
testIsSchemaFile(moduleFile, "localRefSchema.json");
|
||||
testIsSchemaFile(moduleFile, "referencingSchema.json");
|
||||
|
||||
int offset = myEditor.getCaretModel().getPrimaryCaret().getOffset();
|
||||
final PsiReference referenceAt = myFile.findReferenceAt(offset);
|
||||
Assert.assertNotNull(referenceAt);
|
||||
@@ -316,24 +316,30 @@ public class JsonSchemaCrossReferencesTest extends CompletionTestCase {
|
||||
instance.addSchema(inherited);
|
||||
JsonSchemaService.Impl.get(getProject()).reset();
|
||||
|
||||
int offset = myEditor.getCaretModel().getPrimaryCaret().getOffset();
|
||||
PsiElement element = myFile.findElementAt(offset);
|
||||
boolean found = false;
|
||||
while (element.getTextRange().contains(offset)) {
|
||||
if (JsonBySchemaObjectReferenceContributor.REF_PATTERN.accepts(element)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
element = element.getParent();
|
||||
}
|
||||
Assert.assertTrue(found);
|
||||
final PsiReference referenceAt = myFile.findReferenceAt(offset);
|
||||
Assert.assertNotNull(referenceAt);
|
||||
final PsiElement resolve = referenceAt.resolve();
|
||||
Assert.assertNotNull(resolve);
|
||||
Assert.assertEquals("\"baseEnum\"", resolve.getText());
|
||||
Assert.assertEquals("baseProperties.json", resolve.getContainingFile().getName());
|
||||
ApplicationManager.getApplication().runWriteAction(() -> myFileTypeManager.associatePattern(JsonSchemaFileType.INSTANCE, "*Schema.json"));
|
||||
try {
|
||||
|
||||
instance.removeSchema(inherited);
|
||||
int offset = myEditor.getCaretModel().getPrimaryCaret().getOffset();
|
||||
PsiElement element = myFile.findElementAt(offset);
|
||||
boolean found = false;
|
||||
while (element.getTextRange().contains(offset)) {
|
||||
if (JsonBySchemaObjectReferenceContributor.REF_PATTERN.accepts(element)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
element = element.getParent();
|
||||
}
|
||||
Assert.assertTrue(found);
|
||||
final PsiReference referenceAt = myFile.findReferenceAt(offset);
|
||||
Assert.assertNotNull(referenceAt);
|
||||
final PsiElement resolve = referenceAt.resolve();
|
||||
Assert.assertNotNull(resolve);
|
||||
Assert.assertEquals("\"baseEnum\"", resolve.getText());
|
||||
Assert.assertEquals("baseProperties.json", resolve.getContainingFile().getName());
|
||||
|
||||
} finally {
|
||||
instance.removeSchema(inherited);
|
||||
ApplicationManager.getApplication().runWriteAction(() -> myFileTypeManager.removeAssociatedExtension(JsonSchemaFileType.INSTANCE, "*Schema.json"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user