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 // !DIAGNOSTICS: -UNUSED_PARAMETER
fun ubyte(vararg a: UByte) {} fun ubyte(vararg a: UByte) {}
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
val a0: Int = <!CONSTANT_EXPECTED_TYPE_MISMATCH!>1uL<!> val a0: Int = <!CONSTANT_EXPECTED_TYPE_MISMATCH!>1uL<!>
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_VARIABLE // !DIAGNOSTICS: -UNUSED_VARIABLE
fun test( fun test(
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_VARIABLE // !DIAGNOSTICS: -UNUSED_VARIABLE
fun test() { fun test() {
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
const val u0 = 1u const val u0 = 1u
const val u1: UByte = 2u const val u1: UByte = 2u
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
// !DIAGNOSTICS: -UNUSED_PARAMETER // !DIAGNOSTICS: -UNUSED_PARAMETER
const val u1: UByte = 0xFFu const val u1: UByte = 0xFFu
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
val a0: Any = 1u val a0: Any = 1u
@@ -1,5 +1,3 @@
// !LANGUAGE: +InlineClasses
// !SKIP_METADATA_VERSION_CHECK
fun ubyte(vararg a: UByte): UByteArray = a fun ubyte(vararg a: UByte): UByteArray = a
fun ushort(vararg a: UShort): UShortArray = 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, DEFAULT_DIAGNOSTIC_TESTS_FEATURES,
LanguageVersionSettingsImpl.DEFAULT.apiVersion, LanguageVersionSettingsImpl.DEFAULT.apiVersion,
LanguageVersionSettingsImpl.DEFAULT.languageVersion LanguageVersionSettingsImpl.DEFAULT.languageVersion
@@ -5,10 +5,20 @@
package org.jetbrains.kotlin.checkers 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 import org.jetbrains.kotlin.test.ConfigurationKind
abstract class AbstractDiagnosticsWithUnsignedTypes : AbstractDiagnosticsTest() { abstract class AbstractDiagnosticsWithUnsignedTypes : AbstractDiagnosticsTest() {
override fun getConfigurationKind(): ConfigurationKind { override fun getConfigurationKind(): ConfigurationKind {
return ConfigurationKind.WITH_UNSIGNED_TYPES return ConfigurationKind.WITH_UNSIGNED_TYPES
} }
override fun defaultLanguageVersionSettings(): LanguageVersionSettings =
CompilerTestLanguageVersionSettings(
DEFAULT_DIAGNOSTIC_TESTS_FEATURES,
ApiVersion.KOTLIN_1_3,
LanguageVersion.KOTLIN_1_3
)
} }