1
1
package io.runescript.plugin.symbollang.psi
2
2
3
3
import com.intellij.openapi.project.Project
4
+ import com.intellij.openapi.util.text.StringUtil
4
5
import com.intellij.psi.PsiFile
5
6
import com.intellij.psi.PsiFileFactory
6
7
import com.intellij.psi.impl.PsiFileFactoryImpl
7
8
import com.intellij.psi.util.PsiTreeUtil
8
9
import com.intellij.testFramework.LightVirtualFile
9
- import io.runescript.plugin.ide.filetypes.RsFileType
10
- import io.runescript.plugin.lang.RuneScript
10
+ import io.runescript.plugin.symbollang.RuneScriptSymbol
11
+ import io.runescript.plugin.symbollang.filetypes.RsSymFileType
11
12
12
13
object RsSymElementGenerator {
13
14
14
15
fun createField (project : Project , text : String ): RsSymField {
15
- val element = createDummyFile(project, " 000\t $text " )
16
+ val element = createDummyFile(project, " 000\t $text \n " )
16
17
val symField = PsiTreeUtil .findChildOfType(element, RsSymField ::class .java)!! .nextSibling.nextSibling
17
18
return symField as RsSymField
18
19
}
19
20
20
21
private fun createDummyFile (project : Project , text : String ): PsiFile {
21
22
val factory = PsiFileFactory .getInstance(project) as PsiFileFactoryImpl
22
23
val name = " dummy.sym"
23
- val virtualFile = LightVirtualFile (name, RsFileType , text)
24
- return factory.trySetupPsiForFile(virtualFile, RuneScript , false , true )!!
24
+ val virtualFile = LightVirtualFile (name, RsSymFileType , StringUtil .convertLineSeparators( text) )
25
+ return factory.trySetupPsiForFile(virtualFile, RuneScriptSymbol , false , true )!!
25
26
}
26
27
}
0 commit comments