Add diagnostic spec tests generator and validator, helper functions and classes

This commit is contained in:
victor.petukhov
2018-08-10 17:48:09 +03:00
parent e989cf2bf4
commit 0a58898817
13 changed files with 623 additions and 2 deletions
@@ -85,7 +85,7 @@ abstract class BaseDiagnosticsTest : KotlinMultiFileTestWithJava<TestModule, Tes
protected abstract fun analyzeAndCheck(testDataFile: File, files: List<TestFile>)
protected fun getKtFiles(testFiles: List<TestFile>, includeExtras: Boolean): List<KtFile> {
protected open fun getKtFiles(testFiles: List<TestFile>, includeExtras: Boolean): List<KtFile> {
var declareFlexibleType = false
var declareCheckType = false
val ktFiles = arrayListOf<KtFile>()
@@ -123,9 +123,10 @@ abstract class BaseDiagnosticsTest : KotlinMultiFileTestWithJava<TestModule, Tes
val module: TestModule?,
fileName: String,
textWithMarkers: String,
directives: Map<String, String>
val directives: Map<String, String>
) {
private val diagnosedRanges: List<CheckerTestUtil.DiagnosedRange> = ArrayList()
val actualDiagnostics: MutableList<ActualDiagnostic> = ArrayList()
val expectedText: String
private val clearText: String
private val createKtFile: Lazy<KtFile?>
@@ -240,6 +241,8 @@ abstract class BaseDiagnosticsTest : KotlinMultiFileTestWithJava<TestModule, Tes
{ whatDiagnosticsToConsider.value(it.diagnostic) }
)
actualDiagnostics.addAll(diagnostics)
val uncheckedDiagnostics = mutableListOf<PositionalTextDiagnostic>()
val inferenceCompatibilityOfTest = asInferenceCompatibility(withNewInference)
val invertedInferenceCompatibilityOfTest = asInferenceCompatibility(!withNewInference)