Как загрузить java файл в PsiClass вне проекта - PullRequest
0 голосов
/ 27 мая 2020

Я хочу написать тест для своего плагина intellij idea. Он работает с java файлами и генерирует для них тесты.

Теперь я хотел бы создать модульный тест, который проверяет только часть генерации модульного теста. Моя идея состоит в том, чтобы подготовить несколько классов testdata Java и позволить сгенерировать для них модульные тесты, а затем проверить, правильно ли они сгенерированы.

Проблема в том, что я еще не нашел возможности как загрузить файл java (или текстовый файл) в экземпляр PsiClass . Это может быть выполнено с помощью кода, подобного следующему, если ваш код запускается в коде Itellij Idea gui и если файл находится в открытом проекте, , что не в моем случае для теста .

VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(new File("path\\SimpleClass.java")); var projects = ProjectManager.getInstance().getOpenProjects(); PsiFile file = PsiManager.getInstance(projects[0]).findFile(vf);

Любые примеры кода или идеи, как этого добиться? Или, может быть, другой подход, как получить экземпляр PsiClass в качестве тестового ввода?

Заранее спасибо.

...