diff --git a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/asJava/KtFileLightClassTest.kt b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/asJava/KtFileLightClassTest.kt index 014affc388a5..bfbd373bb094 100644 --- a/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/asJava/KtFileLightClassTest.kt +++ b/plugins/kotlin/idea/tests/test/org/jetbrains/kotlin/asJava/KtFileLightClassTest.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.asJava import com.intellij.injected.editor.EditorWindow import com.intellij.psi.PsiElement import com.intellij.psi.PsiFile +import com.intellij.psi.PsiMethod import com.intellij.psi.search.GlobalSearchScope import com.intellij.testFramework.LightProjectDescriptor import junit.framework.TestCase @@ -92,9 +93,17 @@ class KtFileLightClassTest : KotlinLightCodeInsightFixtureTestCase() { assertEquals("Injected class should be `A`", "A", ((injectedFile as KtFile).declarations.single() as KtClass).toLightClass()!!.name) } + fun testPropertyWithPrivateSetter() { + val file = myFixture.configureByFile("propWithPrivateSetter.kt") as KtFile + val aClass = file.classes.single() + val methods = aClass.methods + val methodNames = methods.map(PsiMethod::getName) + assertEquals(methodNames.toString(), 3, methods.size) + assertTrue(methods.toString(), "getProp" in methodNames) + assertTrue(methods.toString(), "setProp" in methodNames) + } fun testSameVirtualFileForLightElement() { - val psiFile = myFixture.addFileToProject( "pkg/AnnotatedClass.kt", """ package pkg diff --git a/plugins/kotlin/idea/tests/testData/asJava/fileLightClass/propWithPrivateSetter.kt b/plugins/kotlin/idea/tests/testData/asJava/fileLightClass/propWithPrivateSetter.kt new file mode 100644 index 000000000000..40e9194bd48f --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/asJava/fileLightClass/propWithPrivateSetter.kt @@ -0,0 +1,7 @@ +class Foo { + var prop = "V" + get() = "V" + private set(value) { + field = value + } +} \ No newline at end of file