Extract default language version settings for diagnostics tests

And override it in unsigned types diagnostics tests.
Remove InlineClasses feature directive from tests, because it's already
enabled in that language version.
This commit is contained in:
Ilya Gorbunov
2018-07-02 18:50:35 +03:00
parent 3349976279
commit 181a8d7d6a
10 changed files with 18 additions and 17 deletions
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_PARAMETER
fun ubyte(vararg a: UByte) {}
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_PARAMETER
val a0: Int = <!CONSTANT_EXPECTED_TYPE_MISMATCH!>1uL<!>
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_VARIABLE
fun test(
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_VARIABLE
fun test() {
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
const val u0 = 1u
const val u1: UByte = 2u
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_PARAMETER
const val u1: UByte = 0xFFu
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
val a0: Any = 1u
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
fun ubyte(vararg a: UByte): UByteArray = a
fun ushort(vararg a: UShort): UShortArray = a
@@ -233,7 +233,14 @@ abstract class AbstractDiagnosticsTest : BaseDiagnosticsTest() {
}
}
return result ?: CompilerTestLanguageVersionSettings(
return result ?: defaultLanguageVersionSettings()
}
/**
* Version settings used when no test data files have overriding version directives
*/
protected open fun defaultLanguageVersionSettings(): LanguageVersionSettings {
return CompilerTestLanguageVersionSettings(
DEFAULT_DIAGNOSTIC_TESTS_FEATURES,
LanguageVersionSettingsImpl.DEFAULT.apiVersion,
LanguageVersionSettingsImpl.DEFAULT.languageVersion
@@ -5,10 +5,20 @@
package org.jetbrains.kotlin.checkers
import org.jetbrains.kotlin.config.ApiVersion
import org.jetbrains.kotlin.config.LanguageVersion
import org.jetbrains.kotlin.config.LanguageVersionSettings
import org.jetbrains.kotlin.test.ConfigurationKind
abstract class AbstractDiagnosticsWithUnsignedTypes : AbstractDiagnosticsTest() {
override fun getConfigurationKind(): ConfigurationKind {
return ConfigurationKind.WITH_UNSIGNED_TYPES
}
override fun defaultLanguageVersionSettings(): LanguageVersionSettings =
CompilerTestLanguageVersionSettings(
DEFAULT_DIAGNOSTIC_TESTS_FEATURES,
ApiVersion.KOTLIN_1_3,
LanguageVersion.KOTLIN_1_3
)
}