Generate static backing fields for properties in object

#KT-4973 Fixed
This commit is contained in:
Michael Bogdanov
2014-09-24 18:35:51 +04:00
parent 37bb4ae984
commit 5412a67d29
29 changed files with 639 additions and 463 deletions
@@ -458,6 +458,12 @@ public class BytecodeTextTestGenerated extends AbstractBytecodeTextTest {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/bytecodeText/staticFields/classObjectSyntheticAccessor.kt");
doTest(fileName);
}
@TestMetadata("object.kt")
public void testObject() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/bytecodeText/staticFields/object.kt");
doTest(fileName);
}
}
@TestMetadata("compiler/testData/codegen/bytecodeText/storeStackBeforeInline")
@@ -6173,21 +6173,33 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/staticFields"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("classObjectAnonymousInitializer.kt")
public void testClassObjectAnonymousInitializer() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/classObjectAnonymousInitializer.kt");
@TestMetadata("anonymousInitializerIObject.kt")
public void testAnonymousInitializerIObject() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/anonymousInitializerIObject.kt");
doTest(fileName);
}
@TestMetadata("classObjectInc.kt")
public void testClassObjectInc() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/classObjectInc.kt");
@TestMetadata("anonymousInitializerInClassObject.kt")
public void testAnonymousInitializerInClassObject() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/anonymousInitializerInClassObject.kt");
doTest(fileName);
}
@TestMetadata("objectInc.kt")
public void testObjectInc() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/objectInc.kt");
@TestMetadata("incInClassObject.kt")
public void testIncInClassObject() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/incInClassObject.kt");
doTest(fileName);
}
@TestMetadata("incInObject.kt")
public void testIncInObject() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/incInObject.kt");
doTest(fileName);
}
@TestMetadata("syntheticAccessor.kt")
public void testSyntheticAccessor() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/codegen/box/staticFields/syntheticAccessor.kt");
doTest(fileName);
}
}
@@ -123,6 +123,12 @@ public class EvaluateExpressionTestGenerated extends AbstractEvaluateExpressionT
doConstantTest(fileName);
}
@TestMetadata("objectProperty.kt")
public void testObjectProperty() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/evaluate/constant/objectProperty.kt");
doConstantTest(fileName);
}
@TestMetadata("strings.kt")
public void testStrings() throws Exception {
String fileName = JetTestUtils.navigationMetadata("compiler/testData/evaluate/constant/strings.kt");