UNNECESSARY_LATEINIT warning introduced #KT-13295 Fixed

(cherry picked from commit 88f9938)
This commit is contained in:
Mikhail Glukhikh
2016-09-26 11:17:42 +03:00
committed by Mikhail Glukhikh
parent b0ed6adce3
commit 4da9a101cf
27 changed files with 316 additions and 3 deletions
@@ -3881,6 +3881,81 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
doTest(fileName);
}
}
@TestMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
public static class UnnecessaryLateinit extends AbstractDiagnosticsTest {
public void testAllFilesPresentInUnnecessaryLateinit() throws Exception {
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("lateinitWithConstructor.kt")
public void testLateinitWithConstructor() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithConstructor.kt");
doTest(fileName);
}
@TestMetadata("lateinitWithErroneousDelegation.kt")
public void testLateinitWithErroneousDelegation() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithErroneousDelegation.kt");
doTest(fileName);
}
@TestMetadata("lateinitWithInit.kt")
public void testLateinitWithInit() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithInit.kt");
doTest(fileName);
}
@TestMetadata("lateinitWithMultipleConstructors.kt")
public void testLateinitWithMultipleConstructors() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithMultipleConstructors.kt");
doTest(fileName);
}
@TestMetadata("lateinitWithMultipleConstructorsAndDelegation.kt")
public void testLateinitWithMultipleConstructorsAndDelegation() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithMultipleConstructorsAndDelegation.kt");
doTest(fileName);
}
@TestMetadata("lateinitWithPlusAssign.kt")
public void testLateinitWithPlusAssign() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithPlusAssign.kt");
doTest(fileName);
}
@TestMetadata("lateinitWithPrimaryConstructorAndConstructor.kt")
public void testLateinitWithPrimaryConstructorAndConstructor() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/lateinitWithPrimaryConstructorAndConstructor.kt");
doTest(fileName);
}
@TestMetadata("normalLateinit.kt")
public void testNormalLateinit() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/normalLateinit.kt");
doTest(fileName);
}
@TestMetadata("normalLateinitWithTwoConstructors.kt")
public void testNormalLateinitWithTwoConstructors() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/normalLateinitWithTwoConstructors.kt");
doTest(fileName);
}
@TestMetadata("secondaryConstructorDelegateItself.kt")
public void testSecondaryConstructorDelegateItself() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/secondaryConstructorDelegateItself.kt");
doTest(fileName);
}
@TestMetadata("secondaryConstructorDelegateLoop.kt")
public void testSecondaryConstructorDelegateLoop() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/tests/controlFlowAnalysis/unnecessaryLateinit/secondaryConstructorDelegateLoop.kt");
doTest(fileName);
}
}
}
@TestMetadata("compiler/testData/diagnostics/tests/controlStructures")