Quick fix for enum entry super constructor syntax fix, together with a set of tests

This commit is contained in:
Mikhail Glukhikh
2015-05-08 18:05:03 +03:00
parent 147bca3d22
commit da3d083dc0
19 changed files with 280 additions and 1 deletions
@@ -261,6 +261,11 @@ public class JetPsiFactory(private val project: Project) {
return createDeclaration<JetClass>("enum class E {$text}").getDeclarations()[0] as JetEnumEntry
}
public fun createEnumEntrySuperclassReferenceExpression(): JetEnumEntrySuperclassReferenceExpression {
val userType = createEnumEntry("Entry()").getInitializerList()!!.getInitializers()[0].getTypeReference()!!.getTypeElement() as JetUserType
return userType.getReferenceExpression() as JetEnumEntrySuperclassReferenceExpression
}
public fun createWhenEntry(entryText: String): JetWhenEntry {
val function = createFunction("fun foo() { when(12) { " + entryText + " } }")
val whenEntry = PsiTreeUtil.findChildOfType(function, javaClass<JetWhenEntry>())