diff --git a/generators/build.gradle.kts b/generators/build.gradle.kts index c6d9538ffd8..6b2d369427f 100644 --- a/generators/build.gradle.kts +++ b/generators/build.gradle.kts @@ -65,6 +65,7 @@ dependencies { testApi(projectTests(":kotlin-allopen-compiler-plugin")) testApi(projectTests(":kotlin-noarg-compiler-plugin")) testApi(projectTests(":kotlin-lombok-compiler-plugin")) + testApi(projectTests(":kotlin-power-assert-compiler-plugin")) testApi(projectTests(":kotlin-sam-with-receiver-compiler-plugin")) testApi(projectTests(":kotlin-assignment-compiler-plugin")) testApi(projectTests(":kotlinx-serialization-compiler-plugin")) diff --git a/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt b/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt index 56bad33bfc8..965493b0fb4 100644 --- a/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt +++ b/generators/tests/org/jetbrains/kotlin/generators/tests/GenerateTests.kt @@ -41,6 +41,8 @@ import org.jetbrains.kotlin.kapt4.AbstractKotlinKapt4ContextTest import org.jetbrains.kotlin.lombok.* import org.jetbrains.kotlin.noarg.* import org.jetbrains.kotlin.parcelize.test.runners.* +import org.jetbrains.kotlin.powerassert.AbstractFirLightTreeBlackBoxCodegenTestForPowerAssert +import org.jetbrains.kotlin.powerassert.AbstractIrBlackBoxCodegenTestForPowerAssert import org.jetbrains.kotlin.samWithReceiver.* import org.jetbrains.kotlin.test.TargetBackend import org.jetbrains.kotlinx.atomicfu.AbstractAtomicfuJsIrTest @@ -355,6 +357,15 @@ fun main(args: Array) { } } + testGroup("plugins/power-assert/tests-gen", "plugins/power-assert/testData") { + testClass { + model("codegen", excludedPattern = excludedFirTestdataPattern) + } + testClass { + model("codegen", excludedPattern = excludedFirTestdataPattern) + } + } + testGroup("plugins/sam-with-receiver/tests-gen", "plugins/sam-with-receiver/testData") { testClass { model("diagnostics", excludedPattern = excludedFirTestdataPattern) diff --git a/plugins/power-assert/build.gradle.kts b/plugins/power-assert/build.gradle.kts index d9c74808e76..1f4163f7577 100644 --- a/plugins/power-assert/build.gradle.kts +++ b/plugins/power-assert/build.gradle.kts @@ -5,6 +5,8 @@ plugins { id("jps-compatible") } +val junit5Classpath by configurations.creating + dependencies { embedded(project(":kotlin-power-assert-compiler-plugin.backend")) { isTransitive = false } embedded(project(":kotlin-power-assert-compiler-plugin.cli")) { isTransitive = false } @@ -18,6 +20,8 @@ dependencies { testRuntimeOnly(commonDependency("org.codehaus.woodstox:stax2-api")) testRuntimeOnly(commonDependency("com.fasterxml:aalto-xml")) + + junit5Classpath(libs.junit.jupiter.api) } optInToExperimentalCompilerApi() @@ -41,4 +45,10 @@ projectTest(parallel = true) { dependsOn(":dist") workingDir = rootDir useJUnitPlatform() + + val localJunit5Classpath: FileCollection = junit5Classpath + + doFirst { + systemProperty("junit5.classpath", localJunit5Classpath.files.joinToString(",") { it.absolutePath }) + } } diff --git a/plugins/power-assert/power-assert.backend/src/org/jetbrains/kotlin/powerassert/diagram/SourceFile.kt b/plugins/power-assert/power-assert.backend/src/org/jetbrains/kotlin/powerassert/diagram/SourceFile.kt index 3deeff2dd51..b6d45873e83 100644 --- a/plugins/power-assert/power-assert.backend/src/org/jetbrains/kotlin/powerassert/diagram/SourceFile.kt +++ b/plugins/power-assert/power-assert.backend/src/org/jetbrains/kotlin/powerassert/diagram/SourceFile.kt @@ -30,7 +30,26 @@ import java.io.File data class SourceFile( private val irFile: IrFile, ) { - private val source: String = File(irFile.path).readText() + companion object { + private val KOTLIN_POWER_ASSERT_ADD_SRC_ROOTS = System.getProperty("KOTLIN_POWER_ASSERT_ADD_SRC_ROOTS") ?: "" + private val sourceRoots = listOf(".") + KOTLIN_POWER_ASSERT_ADD_SRC_ROOTS.split(",").map { it.trim() } + } + + private val source: String = run { + File(irFile.path).also { file -> + if (file.exists()) { + return@run file.readText() + } + } + + for (root in sourceRoots) { + val file = File(root, irFile.path) + if (file.exists()) { + return@run file.readText() + } + } + throw IllegalArgumentException("Unable to find source for IrFile: ${irFile.path}") + } .replace("\r\n", "\n") // https://youtrack.jetbrains.com/issue/KT-41888 fun getSourceRangeInfo(element: IrElement): SourceRangeInfo { diff --git a/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/JunitTestServices.kt b/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/JunitTestServices.kt new file mode 100644 index 00000000000..0e271bb3d70 --- /dev/null +++ b/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/JunitTestServices.kt @@ -0,0 +1,42 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.powerassert + +import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoot +import org.jetbrains.kotlin.config.CompilerConfiguration +import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder +import org.jetbrains.kotlin.test.model.TestModule +import org.jetbrains.kotlin.test.services.EnvironmentConfigurator +import org.jetbrains.kotlin.test.services.RuntimeClasspathProvider +import org.jetbrains.kotlin.test.services.TestServices +import java.io.File + +private val junit5Classpath = System.getProperty("junit5.classpath").split(",") + +fun TestConfigurationBuilder.enableJunit() { + useConfigurators(::JunitEnvironmentConfigurator) + useCustomRuntimeClasspathProviders(::JunitRuntimeClassPathProvider) +} + +class JunitEnvironmentConfigurator(testServices: TestServices) : EnvironmentConfigurator(testServices) { + override fun configureCompilerConfiguration(configuration: CompilerConfiguration, module: TestModule) { + if (PowerAssertConfigurationDirectives.WITH_JUNIT5 in module.directives) { + for (file in junit5Classpath.map { File(it) }) { + configuration.addJvmClasspathRoot(file) + } + } + } +} + +class JunitRuntimeClassPathProvider(testServices: TestServices) : RuntimeClasspathProvider(testServices) { + override fun runtimeClassPaths(module: TestModule): List { + if (PowerAssertConfigurationDirectives.WITH_JUNIT5 in module.directives) { + return junit5Classpath.map { File(it) } + } else { + return emptyList() + } + } +} diff --git a/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/PowerAssertConfigurationDirectives.kt b/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/PowerAssertConfigurationDirectives.kt new file mode 100644 index 00000000000..744e13c025d --- /dev/null +++ b/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/PowerAssertConfigurationDirectives.kt @@ -0,0 +1,17 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.powerassert + +import org.jetbrains.kotlin.test.directives.model.SimpleDirectivesContainer + +object PowerAssertConfigurationDirectives : SimpleDirectivesContainer() { + val FUNCTION by stringDirective( + description = "Functions targeted by Power-Assert transformation", + multiLine = true, + ) + + val WITH_JUNIT5 by directive("Add JUnit5 to classpath") +} diff --git a/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/PowerAssertTests.kt b/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/PowerAssertTests.kt new file mode 100644 index 00000000000..6805c021103 --- /dev/null +++ b/plugins/power-assert/test/org/jetbrains/kotlin/powerassert/PowerAssertTests.kt @@ -0,0 +1,96 @@ +/* + * Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.powerassert + +import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension +import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys +import org.jetbrains.kotlin.cli.common.messages.MessageCollector +import org.jetbrains.kotlin.compiler.plugin.CompilerPluginRegistrar +import org.jetbrains.kotlin.config.CompilerConfiguration +import org.jetbrains.kotlin.name.FqName +import org.jetbrains.kotlin.test.builders.TestConfigurationBuilder +import org.jetbrains.kotlin.test.directives.AdditionalFilesDirectives +import org.jetbrains.kotlin.test.directives.ConfigurationDirectives.WITH_STDLIB +import org.jetbrains.kotlin.test.directives.JvmEnvironmentConfigurationDirectives.FULL_JDK +import org.jetbrains.kotlin.test.directives.model.DirectivesContainer +import org.jetbrains.kotlin.test.directives.model.RegisteredDirectives +import org.jetbrains.kotlin.test.model.TestFile +import org.jetbrains.kotlin.test.model.TestModule +import org.jetbrains.kotlin.test.runners.codegen.AbstractFirLightTreeBlackBoxCodegenTest +import org.jetbrains.kotlin.test.runners.codegen.AbstractIrBlackBoxCodegenTest +import org.jetbrains.kotlin.test.services.AdditionalSourceProvider +import org.jetbrains.kotlin.test.services.EnvironmentConfigurator +import org.jetbrains.kotlin.test.services.TestServices +import java.io.File + +// ------------------------ codegen ------------------------ + +open class AbstractIrBlackBoxCodegenTestForPowerAssert : AbstractIrBlackBoxCodegenTest() { + override fun configure(builder: TestConfigurationBuilder) { + super.configure(builder) + builder.configurePlugin() + } +} + +open class AbstractFirLightTreeBlackBoxCodegenTestForPowerAssert : AbstractFirLightTreeBlackBoxCodegenTest() { + override fun configure(builder: TestConfigurationBuilder) { + super.configure(builder) + builder.configurePlugin() + } +} + +// ------------------------ configuration ------------------------ + +fun TestConfigurationBuilder.configurePlugin() { + // TODO there has got to be a better way? + val sourceRoots = File("plugins/power-assert/testData/") + .walkTopDown() + .filter { it.isDirectory } + .joinToString(",") { it.path } + System.setProperty("KOTLIN_POWER_ASSERT_ADD_SRC_ROOTS", sourceRoots) + + + defaultDirectives { + +FULL_JDK + +WITH_STDLIB + } + useDirectives(PowerAssertConfigurationDirectives) + + useConfigurators(::PowerAssertEnvironmentConfigurator) + + useAdditionalSourceProviders( + ::AdditionalSourceFilesProvider, + ) + + enableJunit() +} + +class PowerAssertEnvironmentConfigurator(testServices: TestServices) : EnvironmentConfigurator(testServices) { + override fun CompilerPluginRegistrar.ExtensionStorage.registerCompilerExtensions( + module: TestModule, + configuration: CompilerConfiguration, + ) { + val functions = moduleStructure.allDirectives[PowerAssertConfigurationDirectives.FUNCTION] + .ifEmpty { listOf("kotlin.assert") } + .mapTo(mutableSetOf()) { FqName(it) } + + val messageCollector = configuration.get(CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY, MessageCollector.NONE) + IrGenerationExtension.registerExtension(PowerAssertIrGenerationExtension(messageCollector, functions)) + } +} + +class AdditionalSourceFilesProvider(testServices: TestServices) : AdditionalSourceProvider(testServices) { + override val directiveContainers: List = + listOf(AdditionalFilesDirectives) + + override fun produceAdditionalFiles(globalDirectives: RegisteredDirectives, module: TestModule): List { + return buildList { + add(File("plugins/power-assert/testData/helpers/InfixDispatch.kt").toTestFile()) + add(File("plugins/power-assert/testData/helpers/InfixExtension.kt").toTestFile()) + add(File("plugins/power-assert/testData/helpers/utils.kt").toTestFile()) + } + } +} diff --git a/plugins/power-assert/testData/codegen/CheckCustomMessage.box.txt b/plugins/power-assert/testData/codegen/CheckCustomMessage.box.txt new file mode 100644 index 00000000000..1fb586b13c0 --- /dev/null +++ b/plugins/power-assert/testData/codegen/CheckCustomMessage.box.txt @@ -0,0 +1,4 @@ +the world is broken +check(1 == 2) { "the world is broken" } + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/CheckCustomMessage.kt b/plugins/power-assert/testData/codegen/CheckCustomMessage.kt new file mode 100644 index 00000000000..141bcbc500d --- /dev/null +++ b/plugins/power-assert/testData/codegen/CheckCustomMessage.kt @@ -0,0 +1,5 @@ +// FUNCTION: kotlin.check + +fun box() = expectThrowableMessage { + check(1 == 2) { "the world is broken" } +} diff --git a/plugins/power-assert/testData/codegen/Constants.box.txt b/plugins/power-assert/testData/codegen/Constants.box.txt new file mode 100644 index 00000000000..d266dfe3ffd --- /dev/null +++ b/plugins/power-assert/testData/codegen/Constants.box.txt @@ -0,0 +1 @@ +Assertion failed \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/Constants.kt b/plugins/power-assert/testData/codegen/Constants.kt new file mode 100644 index 00000000000..adceba281b6 --- /dev/null +++ b/plugins/power-assert/testData/codegen/Constants.kt @@ -0,0 +1,5 @@ +// FUNCTION: kotlin.require + +fun box() = expectThrowableMessage { + assert(false) +} diff --git a/plugins/power-assert/testData/codegen/CustomLocalVariableMessage.box.txt b/plugins/power-assert/testData/codegen/CustomLocalVariableMessage.box.txt new file mode 100644 index 00000000000..ee8ed8a0c48 --- /dev/null +++ b/plugins/power-assert/testData/codegen/CustomLocalVariableMessage.box.txt @@ -0,0 +1,4 @@ +Not equal +assert(1 == 2, lambda) + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/CustomLocalVariableMessage.kt b/plugins/power-assert/testData/codegen/CustomLocalVariableMessage.kt new file mode 100644 index 00000000000..fdba7fbed3d --- /dev/null +++ b/plugins/power-assert/testData/codegen/CustomLocalVariableMessage.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val lambda = { "Not equal" } + assert(1 == 2, lambda) +} diff --git a/plugins/power-assert/testData/codegen/CustomMessage.box.txt b/plugins/power-assert/testData/codegen/CustomMessage.box.txt new file mode 100644 index 00000000000..d1956b9c014 --- /dev/null +++ b/plugins/power-assert/testData/codegen/CustomMessage.box.txt @@ -0,0 +1,4 @@ +Not equal +assert(1 == 2) { "Not equal" } + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/CustomMessage.kt b/plugins/power-assert/testData/codegen/CustomMessage.kt new file mode 100644 index 00000000000..7e7d22d9fb7 --- /dev/null +++ b/plugins/power-assert/testData/codegen/CustomMessage.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(1 == 2) { "Not equal" } +} diff --git a/plugins/power-assert/testData/codegen/MemberFunctions.box.txt b/plugins/power-assert/testData/codegen/MemberFunctions.box.txt new file mode 100644 index 00000000000..2842ef34210 --- /dev/null +++ b/plugins/power-assert/testData/codegen/MemberFunctions.box.txt @@ -0,0 +1,8 @@ +Assertion failed +assert(hello.length == "World".substring(1, 4).length) + | | | | | + | | | | 3 + | | | orl + | | false + | 5 + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/MemberFunctions.kt b/plugins/power-assert/testData/codegen/MemberFunctions.kt new file mode 100644 index 00000000000..ee28746060e --- /dev/null +++ b/plugins/power-assert/testData/codegen/MemberFunctions.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val hello = "Hello" + assert(hello.length == "World".substring(1, 4).length) +} diff --git a/plugins/power-assert/testData/codegen/Multiline.box.txt b/plugins/power-assert/testData/codegen/Multiline.box.txt new file mode 100644 index 00000000000..70e2538dda0 --- /dev/null +++ b/plugins/power-assert/testData/codegen/Multiline.box.txt @@ -0,0 +1,22 @@ +Assertion failed +assert( + text + | + Hello + == null || + | + false + ( + text.length == 5 && + | | | + | | true + | 5 + Hello + text.toLowerCase() == text + | | | | + | | | Hello + | | false + | hello + Hello + ) +) \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/Multiline.kt b/plugins/power-assert/testData/codegen/Multiline.kt new file mode 100644 index 00000000000..0cd1d192043 --- /dev/null +++ b/plugins/power-assert/testData/codegen/Multiline.kt @@ -0,0 +1,11 @@ +fun box() = expectThrowableMessage { + val text: String? = "Hello" + assert( + text + == null || + ( + text.length == 5 && + text.toLowerCase() == text + ) + ) +} diff --git a/plugins/power-assert/testData/codegen/RequireCustomMessage.box.txt b/plugins/power-assert/testData/codegen/RequireCustomMessage.box.txt new file mode 100644 index 00000000000..e2de401001c --- /dev/null +++ b/plugins/power-assert/testData/codegen/RequireCustomMessage.box.txt @@ -0,0 +1,4 @@ +the world is broken +require(1 == 2) { "the world is broken" } + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/RequireCustomMessage.kt b/plugins/power-assert/testData/codegen/RequireCustomMessage.kt new file mode 100644 index 00000000000..b9811aa9ec5 --- /dev/null +++ b/plugins/power-assert/testData/codegen/RequireCustomMessage.kt @@ -0,0 +1,5 @@ +// FUNCTION: kotlin.require + +fun box() = expectThrowableMessage { + require(1 == 2) { "the world is broken" } +} diff --git a/plugins/power-assert/testData/codegen/Transformations.box.txt b/plugins/power-assert/testData/codegen/Transformations.box.txt new file mode 100644 index 00000000000..b3a88014096 --- /dev/null +++ b/plugins/power-assert/testData/codegen/Transformations.box.txt @@ -0,0 +1,7 @@ +Assertion failed +assert(hello.reversed() == emptyList()) + | | | | + | | | [] + | | false + | [World, Hello] + [Hello, World] \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/Transformations.kt b/plugins/power-assert/testData/codegen/Transformations.kt new file mode 100644 index 00000000000..ba8ab8f14b4 --- /dev/null +++ b/plugins/power-assert/testData/codegen/Transformations.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val hello = listOf("Hello", "World") + assert(hello.reversed() == emptyList()) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineAddition.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlineAddition.box.txt new file mode 100644 index 00000000000..1f9793922ab --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineAddition.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(1 + 1 == 4) + | | + | false + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineAddition.kt b/plugins/power-assert/testData/codegen/arithmetic/InlineAddition.kt new file mode 100644 index 00000000000..105f1def1ec --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineAddition.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(1 + 1 == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineDivision.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlineDivision.box.txt new file mode 100644 index 00000000000..2d319fba3a5 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineDivision.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(2 / 1 == 4) + | | + | false + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineDivision.kt b/plugins/power-assert/testData/codegen/arithmetic/InlineDivision.kt new file mode 100644 index 00000000000..1478bdaad24 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineDivision.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(2 / 1 == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.box.txt new file mode 100644 index 00000000000..26c563695dc --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(1 * 2 == 4) + | | + | false + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.kt b/plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.kt new file mode 100644 index 00000000000..c91c32ac2d1 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(1 * 2 == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.box.txt new file mode 100644 index 00000000000..313ae3c5cb5 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(i-- == 4) + | | + | false + 3 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.kt b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.kt new file mode 100644 index 00000000000..e2af9af10d9 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + var i = 3 + assert(i-- == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.box.txt new file mode 100644 index 00000000000..df0add2987f --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(i++ == 4) + | | + | false + 1 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.kt b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.kt new file mode 100644 index 00000000000..ffddcd60dd9 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + var i = 1 + assert(i++ == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.box.txt new file mode 100644 index 00000000000..dfde4b45757 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(--i == 4) + | | + | false + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.kt b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.kt new file mode 100644 index 00000000000..d7fd294b6ab --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + var i = 3 + assert(--i == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.box.txt new file mode 100644 index 00000000000..d6552fa5ad5 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(++i == 4) + | | + | false + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.kt b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.kt new file mode 100644 index 00000000000..0ad0a8d747f --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + var i = 1 + assert(++i == 4) +} diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.box.txt b/plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.box.txt new file mode 100644 index 00000000000..4ef6daa5d21 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(3 - 1 == 4) + | | + | false + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.kt b/plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.kt new file mode 100644 index 00000000000..ded1d9f03e7 --- /dev/null +++ b/plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(3 - 1 == 4) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanAnd.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanAnd.box.txt new file mode 100644 index 00000000000..28fd95344e4 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanAnd.box.txt @@ -0,0 +1,12 @@ +Assertion failed +assert(text != null && text.length == 5 && text.toLowerCase() == text) + | | | | | | | | | + | | | | | | | | Hello + | | | | | | | false + | | | | | | hello + | | | | | Hello + | | | | true + | | | 5 + | | Hello + | true + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanAnd.kt b/plugins/power-assert/testData/codegen/boolean/BooleanAnd.kt new file mode 100644 index 00000000000..d9c03e8eedf --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanAnd.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text: String? = "Hello" + assert(text != null && text.length == 5 && text.toLowerCase() == text) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.box.txt new file mode 100644 index 00000000000..6924856b98d --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.box.txt @@ -0,0 +1,12 @@ +Assertion failed +assert(text != null && (text.length == 1 || text.toLowerCase() == text)) + | | | | | | | | | + | | | | | | | | Hello + | | | | | | | false + | | | | | | hello + | | | | | Hello + | | | | false + | | | 5 + | | Hello + | true + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.kt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.kt new file mode 100644 index 00000000000..4af8d94ab79 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text: String? = "Hello" + assert(text != null && (text.length == 1 || text.toLowerCase() == text)) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.box.txt new file mode 100644 index 00000000000..2943d2f5508 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.box.txt @@ -0,0 +1,10 @@ +Assertion failed +assert((text.length == 1 || text.toLowerCase() == text) && text.length == 1) + | | | | | | | + | | | | | | Hello + | | | | | false + | | | | hello + | | | Hello + | | false + | 5 + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.kt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.kt new file mode 100644 index 00000000000..f8aed71efc1 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text = "Hello" + assert((text.length == 1 || text.toLowerCase() == text) && text.length == 1) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.box.txt new file mode 100644 index 00000000000..72d0ff0838c --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.box.txt @@ -0,0 +1,12 @@ +Assertion failed +assert(text == null || (text.length == 5 && text.toLowerCase() == text)) + | | | | | | | | | + | | | | | | | | Hello + | | | | | | | false + | | | | | | hello + | | | | | Hello + | | | | true + | | | 5 + | | Hello + | false + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.kt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.kt new file mode 100644 index 00000000000..3b8223a79c5 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text: String? = "Hello" + assert(text == null || (text.length == 5 && text.toLowerCase() == text)) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.box.txt new file mode 100644 index 00000000000..b462b1ca8ac --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.box.txt @@ -0,0 +1,13 @@ +Assertion failed +assert((text.length == 5 && text.toLowerCase() == text) || text.length == 1) + | | | | | | | | | | + | | | | | | | | | false + | | | | | | | | 5 + | | | | | | | Hello + | | | | | | Hello + | | | | | false + | | | | hello + | | | Hello + | | true + | 5 + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.kt b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.kt new file mode 100644 index 00000000000..d4ed9346eba --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text = "Hello" + assert((text.length == 5 && text.toLowerCase() == text) || text.length == 1) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanOr.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanOr.box.txt new file mode 100644 index 00000000000..70f832f0e40 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanOr.box.txt @@ -0,0 +1,12 @@ +Assertion failed +assert(text == null || text.length == 1 || text.toLowerCase() == text) + | | | | | | | | | + | | | | | | | | Hello + | | | | | | | false + | | | | | | hello + | | | | | Hello + | | | | false + | | | 5 + | | Hello + | false + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanOr.kt b/plugins/power-assert/testData/codegen/boolean/BooleanOr.kt new file mode 100644 index 00000000000..8396401f795 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanOr.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text: String? = "Hello" + assert(text == null || text.length == 1 || text.toLowerCase() == text) +} diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.box.txt b/plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.box.txt new file mode 100644 index 00000000000..bec7494153d --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(text != null && text.length == 1) + | | + | false + null \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.kt b/plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.kt new file mode 100644 index 00000000000..e112582e863 --- /dev/null +++ b/plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text: String? = null + assert(text != null && text.length == 1) +} diff --git a/plugins/power-assert/testData/codegen/cast/InstanceEquals.box.txt b/plugins/power-assert/testData/codegen/cast/InstanceEquals.box.txt new file mode 100644 index 00000000000..4ae7439616b --- /dev/null +++ b/plugins/power-assert/testData/codegen/cast/InstanceEquals.box.txt @@ -0,0 +1,4 @@ +Assertion failed +assert(null is String) + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/cast/InstanceEquals.kt b/plugins/power-assert/testData/codegen/cast/InstanceEquals.kt new file mode 100644 index 00000000000..821b4c4ea20 --- /dev/null +++ b/plugins/power-assert/testData/codegen/cast/InstanceEquals.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(null is String) +} diff --git a/plugins/power-assert/testData/codegen/cast/InstanceNotEquals.box.txt b/plugins/power-assert/testData/codegen/cast/InstanceNotEquals.box.txt new file mode 100644 index 00000000000..00fff83e7e2 --- /dev/null +++ b/plugins/power-assert/testData/codegen/cast/InstanceNotEquals.box.txt @@ -0,0 +1,4 @@ +Assertion failed +assert("Hello, world!" !is String) + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/cast/InstanceNotEquals.kt b/plugins/power-assert/testData/codegen/cast/InstanceNotEquals.kt new file mode 100644 index 00000000000..d6940811293 --- /dev/null +++ b/plugins/power-assert/testData/codegen/cast/InstanceNotEquals.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert("Hello, world!" !is String) +} diff --git a/plugins/power-assert/testData/codegen/cast/SmartCast.box.txt b/plugins/power-assert/testData/codegen/cast/SmartCast.box.txt new file mode 100644 index 00000000000..839b790dc2d --- /dev/null +++ b/plugins/power-assert/testData/codegen/cast/SmartCast.box.txt @@ -0,0 +1,8 @@ +Assertion failed +assert(greeting is String && greeting.length == 2) + | | | | | + | | | | false + | | | 5 + | | hello + | true + hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/cast/SmartCast.kt b/plugins/power-assert/testData/codegen/cast/SmartCast.kt new file mode 100644 index 00000000000..06fc01f1e32 --- /dev/null +++ b/plugins/power-assert/testData/codegen/cast/SmartCast.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val greeting: Any = "hello" + assert(greeting is String && greeting.length == 2) +} diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.box.txt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.box.txt new file mode 100644 index 00000000000..692814bdc22 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.box.txt @@ -0,0 +1,6 @@ +sum=6 +dbg(operation, 1 + 2 + 3) + | | | + | | 6 + | 3 + sum \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.kt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.kt new file mode 100644 index 00000000000..2b5e53a3bf6 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.kt @@ -0,0 +1,9 @@ +// FUNCTION: dbg + +fun box() = expectThrowableMessage { + val operation = "sum" + dbg(operation, 1 + 2 + 3) +} + +fun dbg(key: Any, value: T): T = value +fun dbg(key: Any, value: T, msg: String): T = throw RuntimeException(key.toString() + "=" + value + "\n" + msg) diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.box.txt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.box.txt new file mode 100644 index 00000000000..a6daf7bfb8e --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.box.txt @@ -0,0 +1,11 @@ +false=true +dbg( + key = greeting != null && greeting.length == 5, + | | + | false + null + value = name == null || name.length == 5 + | | + | true + null +) \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.kt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.kt new file mode 100644 index 00000000000..5c91e340923 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.kt @@ -0,0 +1,13 @@ +// FUNCTION: dbg + +fun box() = expectThrowableMessage { + val greeting: String? = null + val name: String? = null + dbg( + key = greeting != null && greeting.length == 5, + value = name == null || name.length == 5 + ) +} + +fun dbg(key: Any, value: T): T = value +fun dbg(key: Any, value: T, msg: String): T = throw RuntimeException(key.toString() + "=" + value + "\n" + msg) diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.box.txt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.box.txt new file mode 100644 index 00000000000..b1a502ac962 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.box.txt @@ -0,0 +1,7 @@ +sum=6 +Message: +dbg(operation, 1 + 2 + 3, "Message:") + | | | + | | 6 + | 3 + sum \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.kt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.kt new file mode 100644 index 00000000000..8d1c93da75d --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.kt @@ -0,0 +1,9 @@ +// FUNCTION: dbg + +fun box() = expectThrowableMessage { + val operation = "sum" + dbg(operation, 1 + 2 + 3, "Message:") +} + +fun dbg(key: Any, value: T): T = value +fun dbg(key: Any, value: T, msg: String): T = throw RuntimeException(key.toString() + "=" + value + "\n" + msg) diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.box.txt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.box.txt new file mode 100644 index 00000000000..06ba4415a06 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.box.txt @@ -0,0 +1,13 @@ +false=true +Message: +dbg( + key = greeting != null && greeting.length == 5, + | | + | false + null + value = name == null || name.length == 5, + | | + | true + null + msg = "Message:" +) \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.kt b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.kt new file mode 100644 index 00000000000..d8fbb42fdc3 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.kt @@ -0,0 +1,14 @@ +// FUNCTION: dbg + +fun box() = expectThrowableMessage { + val greeting: String? = null + val name: String? = null + dbg( + key = greeting != null && greeting.length == 5, + value = name == null || name.length == 5, + msg = "Message:" + ) +} + +fun dbg(key: Any, value: T): T = value +fun dbg(key: Any, value: T, msg: String): T = throw RuntimeException(key.toString() + "=" + value + "\n" + msg) diff --git a/plugins/power-assert/testData/codegen/dbg/DebugFunction.box.txt b/plugins/power-assert/testData/codegen/dbg/DebugFunction.box.txt new file mode 100644 index 00000000000..b917e6ed083 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugFunction.box.txt @@ -0,0 +1,4 @@ +dbg(1 + 2 + 3) + | | + | 6 + 3 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/dbg/DebugFunction.kt b/plugins/power-assert/testData/codegen/dbg/DebugFunction.kt new file mode 100644 index 00000000000..ece924a0388 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugFunction.kt @@ -0,0 +1,8 @@ +// FUNCTION: dbg + +fun box() = expectThrowableMessage { + dbg(1 + 2 + 3) +} + +fun dbg(value: T): T = value +fun dbg(value: T, msg: String): T = throw RuntimeException(msg) diff --git a/plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.box.txt b/plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.box.txt new file mode 100644 index 00000000000..a9868297046 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.box.txt @@ -0,0 +1,5 @@ +Message: +dbg(1 + 2 + 3, "Message:") + | | + | 6 + 3 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.kt b/plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.kt new file mode 100644 index 00000000000..f0e00edac66 --- /dev/null +++ b/plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.kt @@ -0,0 +1,8 @@ +// FUNCTION: dbg + +fun box() = expectThrowableMessage { + dbg(1 + 2 + 3, "Message:") +} + +fun dbg(value: T): T = value +fun dbg(value: T, msg: String): T = throw RuntimeException(msg) diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfix.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchInfix.box.txt new file mode 100644 index 00000000000..ebc7c18dc06 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfix.box.txt @@ -0,0 +1,5 @@ +Wrapper(1 + 1) mustEqual (2 + 4) +| | | +| | 6 +| 2 +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfix.kt b/plugins/power-assert/testData/codegen/infix/DispatchInfix.kt new file mode 100644 index 00000000000..f1c48f38d7c --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfix.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(1 + 1) mustEqual (2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.box.txt new file mode 100644 index 00000000000..c4908cdd281 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.box.txt @@ -0,0 +1,4 @@ +Wrapper(1 + 1) mustEqual 6 +| | +| 2 +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.kt b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.kt new file mode 100644 index 00000000000..f7ad488f0eb --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(1 + 1) mustEqual 6 +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.box.txt new file mode 100644 index 00000000000..5bd2da4999c --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.box.txt @@ -0,0 +1,4 @@ +Wrapper(1) mustEqual (2 + 4) +| | +| 6 +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.kt b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.kt new file mode 100644 index 00000000000..4fdff7babea --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(1) mustEqual (2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.box.txt new file mode 100644 index 00000000000..9faa569d54e --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.box.txt @@ -0,0 +1,3 @@ +Wrapper(2) mustEqual 6 +| +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.kt b/plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.kt new file mode 100644 index 00000000000..50d5355bc2c --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(2) mustEqual 6 +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfix.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfix.box.txt new file mode 100644 index 00000000000..b55834b9e75 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfix.box.txt @@ -0,0 +1,5 @@ +Wrapper(1 + 1).mustEqual(2 + 4) +| | | +| | 6 +| 2 +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfix.kt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfix.kt new file mode 100644 index 00000000000..4cd33f8dfdb --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfix.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(1 + 1).mustEqual(2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.box.txt new file mode 100644 index 00000000000..2836b34af2e --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.box.txt @@ -0,0 +1,4 @@ +Wrapper(1 + 1).mustEqual(6) +| | +| 2 +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.kt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.kt new file mode 100644 index 00000000000..73b721ceb52 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(1 + 1).mustEqual(6) +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.box.txt new file mode 100644 index 00000000000..ab36fa24415 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.box.txt @@ -0,0 +1,4 @@ +Wrapper(1).mustEqual(2 + 4) +| | +| 6 +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.kt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.kt new file mode 100644 index 00000000000..45fc515596c --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(1).mustEqual(2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.box.txt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.box.txt new file mode 100644 index 00000000000..b0c04395419 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.box.txt @@ -0,0 +1,3 @@ +Wrapper(2).mustEqual(6) +| +Wrapper \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.kt b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.kt new file mode 100644 index 00000000000..09914e38292 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.dispatch.Wrapper.mustEqual + +import infix.dispatch.* + +fun box() = expectThrowableMessage { + Wrapper(2).mustEqual(6) +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfix.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionInfix.box.txt new file mode 100644 index 00000000000..7bcbbe0d1b6 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfix.box.txt @@ -0,0 +1,4 @@ +(1 + 1) mustEqual (2 + 4) + | | + | 6 + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfix.kt b/plugins/power-assert/testData/codegen/infix/ExtensionInfix.kt new file mode 100644 index 00000000000..523213ac18f --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfix.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + (1 + 1) mustEqual (2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.box.txt new file mode 100644 index 00000000000..4d72d2fff41 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.box.txt @@ -0,0 +1,3 @@ +(1 + 1) mustEqual 6 + | + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.kt b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.kt new file mode 100644 index 00000000000..ac2874a5220 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + (1 + 1) mustEqual 6 +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.box.txt new file mode 100644 index 00000000000..89257e8a5b4 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.box.txt @@ -0,0 +1,3 @@ +1 mustEqual (2 + 4) + | + 6 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.kt b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.kt new file mode 100644 index 00000000000..acb885b5221 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + 1 mustEqual (2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.box.txt new file mode 100644 index 00000000000..d266dfe3ffd --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.box.txt @@ -0,0 +1 @@ +Assertion failed \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.kt b/plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.kt new file mode 100644 index 00000000000..de114990adc --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + 2 mustEqual 6 +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.box.txt new file mode 100644 index 00000000000..d5e46931616 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.box.txt @@ -0,0 +1,4 @@ +(1 + 1).mustEqual(2 + 4) + | | + | 6 + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.kt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.kt new file mode 100644 index 00000000000..92c11c0b37a --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + (1 + 1).mustEqual(2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.box.txt new file mode 100644 index 00000000000..91b991d4451 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.box.txt @@ -0,0 +1,3 @@ +(1 + 1).mustEqual(6) + | + 2 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.kt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.kt new file mode 100644 index 00000000000..2bf2fc36d5c --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + (1 + 1).mustEqual(6) +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.box.txt new file mode 100644 index 00000000000..653cab331d8 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.box.txt @@ -0,0 +1,3 @@ +1.mustEqual(2 + 4) + | + 6 \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.kt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.kt new file mode 100644 index 00000000000..31975d9d2b2 --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + 1.mustEqual(2 + 4) +} diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.box.txt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.box.txt new file mode 100644 index 00000000000..d266dfe3ffd --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.box.txt @@ -0,0 +1 @@ +Assertion failed \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.kt b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.kt new file mode 100644 index 00000000000..1033879aa3f --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.kt @@ -0,0 +1,7 @@ +// FUNCTION: infix.extension.mustEqual + +import infix.extension.* + +fun box() = expectThrowableMessage { + 2.mustEqual(6) +} diff --git a/plugins/power-assert/testData/codegen/infix/RegexFunction.box.txt b/plugins/power-assert/testData/codegen/infix/RegexFunction.box.txt new file mode 100644 index 00000000000..ab018b5716d --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/RegexFunction.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert("Hello, World".matches("[A-Za-z]+".toRegex())) + | | + | [A-Za-z]+ + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/RegexFunction.kt b/plugins/power-assert/testData/codegen/infix/RegexFunction.kt new file mode 100644 index 00000000000..e295a721edb --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/RegexFunction.kt @@ -0,0 +1,7 @@ +// IGNORE_BACKEND_K1: JVM_IR +// IGNORE_BACKEND_K2: JVM_IR +// Disabled because of KT-65640 + +fun box() = expectThrowableMessage { + assert("Hello, World".matches("[A-Za-z]+".toRegex())) +} diff --git a/plugins/power-assert/testData/codegen/infix/RegexInfix.box.txt b/plugins/power-assert/testData/codegen/infix/RegexInfix.box.txt new file mode 100644 index 00000000000..b3493a2c0af --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/RegexInfix.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert("Hello, World" matches "[A-Za-z]+".toRegex()) + | | + | [A-Za-z]+ + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/infix/RegexInfix.kt b/plugins/power-assert/testData/codegen/infix/RegexInfix.kt new file mode 100644 index 00000000000..55954833e3c --- /dev/null +++ b/plugins/power-assert/testData/codegen/infix/RegexInfix.kt @@ -0,0 +1,7 @@ +// IGNORE_BACKEND_K1: JVM_IR +// IGNORE_BACKEND_K2: JVM_IR +// Disabled because of KT-65640 + +fun box() = expectThrowableMessage { + assert("Hello, World" matches "[A-Za-z]+".toRegex()) +} diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.box.txt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.box.txt new file mode 100644 index 00000000000..3ca86ea8f33 --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.box.txt @@ -0,0 +1,4 @@ +Assertion failed +assertTrue(1 != 1) + | + false ==> expected: but was: \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.kt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.kt new file mode 100644 index 00000000000..268ce68bf70 --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.kt @@ -0,0 +1,8 @@ +// FUNCTION: org.junit.jupiter.api.Assertions.assertTrue +// WITH_JUNIT5 + +import org.junit.jupiter.api.Assertions.assertTrue + +fun box() = expectThrowableMessage { + assertTrue(1 != 1) +} diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.box.txt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.box.txt new file mode 100644 index 00000000000..b41bb2f63ee --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.box.txt @@ -0,0 +1,4 @@ +Message: +assertTrue(1 != 1, "Message:") + | + false ==> expected: but was: \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.kt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.kt new file mode 100644 index 00000000000..c1bbfa1e270 --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.kt @@ -0,0 +1,8 @@ +// FUNCTION: org.junit.jupiter.api.Assertions.assertTrue +// WITH_JUNIT5 + +import org.junit.jupiter.api.Assertions.assertTrue + +fun box() = expectThrowableMessage { + assertTrue(1 != 1, "Message:") +} diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.box.txt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.box.txt new file mode 100644 index 00000000000..d4f30f5f02f --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.box.txt @@ -0,0 +1,4 @@ +Message: +assertTrue(1 != 1) { "Message:" } + | + false ==> expected: but was: \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.kt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.kt new file mode 100644 index 00000000000..628f54a385a --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.kt @@ -0,0 +1,8 @@ +// FUNCTION: org.junit.jupiter.api.Assertions.assertTrue +// WITH_JUNIT5 + +import org.junit.jupiter.api.Assertions.assertTrue + +fun box() = expectThrowableMessage { + assertTrue(1 != 1) { "Message:" } +} diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.box.txt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.box.txt new file mode 100644 index 00000000000..6913e8c1af0 --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.box.txt @@ -0,0 +1,4 @@ +Message: +assertTrue(1 != 1, supplier) + | + false ==> expected: but was: \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.kt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.kt new file mode 100644 index 00000000000..72a0be7750c --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.kt @@ -0,0 +1,10 @@ +// FUNCTION: org.junit.jupiter.api.Assertions.assertTrue +// WITH_JUNIT5 + +import java.util.function.Supplier +import org.junit.jupiter.api.Assertions.assertTrue + +fun box() = expectThrowableMessage { + val supplier = Supplier { "Message:" } + assertTrue(1 != 1, supplier) +} diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.box.txt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.box.txt new file mode 100644 index 00000000000..393c218a011 --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.box.txt @@ -0,0 +1,4 @@ +Message: +assertTrue(1 != 1, message) + | + false ==> expected: but was: \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.kt b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.kt new file mode 100644 index 00000000000..a445ea04878 --- /dev/null +++ b/plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.kt @@ -0,0 +1,9 @@ +// FUNCTION: org.junit.jupiter.api.Assertions.assertTrue +// WITH_JUNIT5 + +import org.junit.jupiter.api.Assertions.assertTrue + +fun box() = expectThrowableMessage { + val message = "Message:" + assertTrue(1 != 1, message) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.box.txt new file mode 100644 index 00000000000..d7ac6f3e6e4 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.box.txt @@ -0,0 +1,4 @@ +assertEquals(greeting, name) + | | + | World + Hello. Expected , actual . \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.kt new file mode 100644 index 00000000000..60d4cfae967 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.kt @@ -0,0 +1,9 @@ +// FUNCTION: kotlin.test.assertEquals + +import kotlin.test.assertEquals + +fun box() = expectThrowableMessage { + val greeting = "Hello" + val name = "World" + assertEquals(greeting, name) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.box.txt new file mode 100644 index 00000000000..ffdc0347a52 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.box.txt @@ -0,0 +1,5 @@ +Message: +assertEquals(greeting, name, "Message:") + | | + | World + Hello. Expected , actual . \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.kt new file mode 100644 index 00000000000..38a563d39f7 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.kt @@ -0,0 +1,9 @@ +// FUNCTION: kotlin.test.assertEquals + +import kotlin.test.assertEquals + +fun box() = expectThrowableMessage { + val greeting = "Hello" + val name = "World" + assertEquals(greeting, name, "Message:") +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.box.txt new file mode 100644 index 00000000000..a1360af3461 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.box.txt @@ -0,0 +1,5 @@ +Message: +assertEquals(greeting, name, message) + | | + | World + Hello. Expected , actual . \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.kt new file mode 100644 index 00000000000..fcf38aa5d66 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.kt @@ -0,0 +1,10 @@ +// FUNCTION: kotlin.test.assertEquals + +import kotlin.test.assertEquals + +fun box() = expectThrowableMessage { + val greeting = "Hello" + val name = "World" + val message = "Message:" + assertEquals(greeting, name, message) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.box.txt new file mode 100644 index 00000000000..7c2547f2b10 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.box.txt @@ -0,0 +1,4 @@ +Assertion failed +assertFalse(1 == 1) + | + true \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.kt new file mode 100644 index 00000000000..255fcf0ddd6 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.kt @@ -0,0 +1,7 @@ +// FUNCTION: kotlin.test.assertFalse + +import kotlin.test.assertFalse + +fun box() = expectThrowableMessage { + assertFalse(1 == 1) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.box.txt new file mode 100644 index 00000000000..c897d3bdc8e --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.box.txt @@ -0,0 +1,4 @@ +Message: +assertFalse(1 == 1, "Message:") + | + true \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.kt new file mode 100644 index 00000000000..6ad30cd9c2e --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.kt @@ -0,0 +1,7 @@ +// FUNCTION: kotlin.test.assertFalse + +import kotlin.test.assertFalse + +fun box() = expectThrowableMessage { + assertFalse(1 == 1, "Message:") +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.box.txt new file mode 100644 index 00000000000..b2e66704192 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.box.txt @@ -0,0 +1,4 @@ +Message: +assertFalse(1 == 1, message) + | + true \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.kt new file mode 100644 index 00000000000..2b64d2bf597 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.kt @@ -0,0 +1,8 @@ +// FUNCTION: kotlin.test.assertFalse + +import kotlin.test.assertFalse + +fun box() = expectThrowableMessage { + val message = "Message:" + assertFalse(1 == 1, message) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.box.txt new file mode 100644 index 00000000000..0e07eae0785 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.box.txt @@ -0,0 +1,3 @@ +assertNotNull(name) + | + null. Expected value to be not null. \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.kt new file mode 100644 index 00000000000..fa4108dd63f --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.kt @@ -0,0 +1,8 @@ +// FUNCTION: kotlin.test.assertNotNull + +import kotlin.test.assertNotNull + +fun box() = expectThrowableMessage { + val name: String? = null + assertNotNull(name) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.box.txt new file mode 100644 index 00000000000..f75059f5e2e --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.box.txt @@ -0,0 +1,4 @@ +Message: +assertNotNull(name, "Message:") + | + null. Expected value to be not null. \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.kt new file mode 100644 index 00000000000..aabbd9cb152 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.kt @@ -0,0 +1,8 @@ +// FUNCTION: kotlin.test.assertNotNull + +import kotlin.test.assertNotNull + +fun box() = expectThrowableMessage { + val name: String? = null + assertNotNull(name, "Message:") +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.box.txt new file mode 100644 index 00000000000..148b5b6f839 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.box.txt @@ -0,0 +1,4 @@ +Message: +assertNotNull(name, message) + | + null. Expected value to be not null. \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.kt new file mode 100644 index 00000000000..8e87f5e6a66 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.kt @@ -0,0 +1,9 @@ +// FUNCTION: kotlin.test.assertNotNull + +import kotlin.test.assertNotNull + +fun box() = expectThrowableMessage { + val name: String? = null + val message = "Message:" + assertNotNull(name, message) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.box.txt new file mode 100644 index 00000000000..51484c3cd75 --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.box.txt @@ -0,0 +1,4 @@ +Assertion failed +assertTrue(1 != 1) + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.kt new file mode 100644 index 00000000000..838e46ede3b --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.kt @@ -0,0 +1,7 @@ +// FUNCTION: kotlin.test.assertTrue + +import kotlin.test.assertTrue + +fun box() = expectThrowableMessage { + assertTrue(1 != 1) +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.box.txt new file mode 100644 index 00000000000..b284cdf0fce --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.box.txt @@ -0,0 +1,4 @@ +Message: +assertTrue(1 != 1, "Message:") + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.kt new file mode 100644 index 00000000000..1289040e70f --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.kt @@ -0,0 +1,7 @@ +// FUNCTION: kotlin.test.assertTrue + +import kotlin.test.assertTrue + +fun box() = expectThrowableMessage { + assertTrue(1 != 1, "Message:") +} diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.box.txt b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.box.txt new file mode 100644 index 00000000000..8f832ddbdec --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.box.txt @@ -0,0 +1,4 @@ +Message: +assertTrue(1 != 1, message) + | + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.kt b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.kt new file mode 100644 index 00000000000..f24282ea34f --- /dev/null +++ b/plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.kt @@ -0,0 +1,8 @@ +// FUNCTION: kotlin.test.assertTrue + +import kotlin.test.assertTrue + +fun box() = expectThrowableMessage { + val message = "Message:" + assertTrue(1 != 1, message) +} diff --git a/plugins/power-assert/testData/codegen/lambda/AnonymousObject.box.txt b/plugins/power-assert/testData/codegen/lambda/AnonymousObject.box.txt new file mode 100644 index 00000000000..3e093ec8337 --- /dev/null +++ b/plugins/power-assert/testData/codegen/lambda/AnonymousObject.box.txt @@ -0,0 +1,6 @@ +Assertion failed +assert(object { override fun toString() = "ANONYMOUS" }.toString() == "toString()") + | | | + | | false + | ANONYMOUS + ANONYMOUS \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/lambda/AnonymousObject.kt b/plugins/power-assert/testData/codegen/lambda/AnonymousObject.kt new file mode 100644 index 00000000000..370546fe395 --- /dev/null +++ b/plugins/power-assert/testData/codegen/lambda/AnonymousObject.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(object { override fun toString() = "ANONYMOUS" }.toString() == "toString()") +} diff --git a/plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.box.txt b/plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.box.txt new file mode 100644 index 00000000000..d1459764900 --- /dev/null +++ b/plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.box.txt @@ -0,0 +1,6 @@ +Assertion failed +assert(list.map { "Doe, $it" }.any { it == "Scott, Michael" }) + | | | + | | false + | [Doe, Jane, Doe, John] + [Jane, John] \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.kt b/plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.kt new file mode 100644 index 00000000000..f6e5ee6b5a3 --- /dev/null +++ b/plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val list = listOf("Jane", "John") + assert(list.map { "Doe, $it" }.any { it == "Scott, Michael" }) +} diff --git a/plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.box.txt b/plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.box.txt new file mode 100644 index 00000000000..ce295d58650 --- /dev/null +++ b/plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.box.txt @@ -0,0 +1,12 @@ +Assertion failed +require( + value = list + | + [Jane, John] + .map { "Doe, $it" } + | + [Doe, Jane, Doe, John] + .any { it == "Scott, Michael" } + | + false +) \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.kt b/plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.kt new file mode 100644 index 00000000000..c266921ea64 --- /dev/null +++ b/plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.kt @@ -0,0 +1,10 @@ +// FUNCTION: kotlin.require + +fun box() = expectThrowableMessage { + val list = listOf("Jane", "John") + require( + value = list + .map { "Doe, $it" } + .any { it == "Scott, Michael" } + ) +} diff --git a/plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.box.txt b/plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.box.txt new file mode 100644 index 00000000000..1e27d84f242 --- /dev/null +++ b/plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.box.txt @@ -0,0 +1,7 @@ +Assertion failed +assert(text?.length?.minus(2) == 1) + | | | | + | | | false + | | 3 + | 5 + Hello \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.kt b/plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.kt new file mode 100644 index 00000000000..ea8499111c1 --- /dev/null +++ b/plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + val text: String? = "Hello" + assert(text?.length?.minus(2) == 1) +} diff --git a/plugins/power-assert/testData/codegen/operator/ContainsFunction.box.txt b/plugins/power-assert/testData/codegen/operator/ContainsFunction.box.txt new file mode 100644 index 00000000000..bd5421f1f1d --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/ContainsFunction.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert(listOf("Hello", "World").contains("Name")) + | | + | false + [Hello, World] \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/operator/ContainsFunction.kt b/plugins/power-assert/testData/codegen/operator/ContainsFunction.kt new file mode 100644 index 00000000000..5ef81631a2d --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/ContainsFunction.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(listOf("Hello", "World").contains("Name")) +} diff --git a/plugins/power-assert/testData/codegen/operator/ContainsOperator.box.txt b/plugins/power-assert/testData/codegen/operator/ContainsOperator.box.txt new file mode 100644 index 00000000000..90c1390e353 --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/ContainsOperator.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert("Name" in listOf("Hello", "World")) + | | + | [Hello, World] + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/operator/ContainsOperator.kt b/plugins/power-assert/testData/codegen/operator/ContainsOperator.kt new file mode 100644 index 00000000000..7faab6afa16 --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/ContainsOperator.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert("Name" in listOf("Hello", "World")) +} diff --git a/plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.box.txt b/plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.box.txt new file mode 100644 index 00000000000..b16b6b39678 --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.box.txt @@ -0,0 +1,6 @@ +Assertion failed +assert(!listOf("Hello", "World").contains("Hello")) + || | + || true + |[Hello, World] + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.kt b/plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.kt new file mode 100644 index 00000000000..32a51a7fd07 --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.kt @@ -0,0 +1,3 @@ +fun box() = expectThrowableMessage { + assert(!listOf("Hello", "World").contains("Hello")) +} diff --git a/plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.box.txt b/plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.box.txt new file mode 100644 index 00000000000..a052ba57b1b --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.box.txt @@ -0,0 +1,5 @@ +Assertion failed +assert("Hello" !in listOf("Hello", "World")) + | | + | [Hello, World] + false \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.kt b/plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.kt new file mode 100644 index 00000000000..3d7f6d2bd4b --- /dev/null +++ b/plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.kt @@ -0,0 +1,6 @@ +// IGNORE_BACKEND_K2: JVM_IR +// K2 disabled because of KT-65636 + +fun box() = expectThrowableMessage { + assert("Hello" !in listOf("Hello", "World")) +} diff --git a/plugins/power-assert/testData/codegen/parameters/VarargParameter.box.txt b/plugins/power-assert/testData/codegen/parameters/VarargParameter.box.txt new file mode 100644 index 00000000000..fe4a069f669 --- /dev/null +++ b/plugins/power-assert/testData/codegen/parameters/VarargParameter.box.txt @@ -0,0 +1,9 @@ +Assertion failed +assert(listOf("a", "b", "c") == listOf(i++, i++, i++)) + | | | | | | + | | | | | 2 + | | | | 1 + | | | 0 + | | [0, 1, 2] + | false + [a, b, c] \ No newline at end of file diff --git a/plugins/power-assert/testData/codegen/parameters/VarargParameter.kt b/plugins/power-assert/testData/codegen/parameters/VarargParameter.kt new file mode 100644 index 00000000000..59887499516 --- /dev/null +++ b/plugins/power-assert/testData/codegen/parameters/VarargParameter.kt @@ -0,0 +1,4 @@ +fun box() = expectThrowableMessage { + var i = 0 + assert(listOf("a", "b", "c") == listOf(i++, i++, i++)) +} diff --git a/plugins/power-assert/testData/helpers/InfixDispatch.kt b/plugins/power-assert/testData/helpers/InfixDispatch.kt new file mode 100644 index 00000000000..cf42ef0d9d5 --- /dev/null +++ b/plugins/power-assert/testData/helpers/InfixDispatch.kt @@ -0,0 +1,12 @@ +package infix.dispatch + +class Wrapper( + private val value: V, +) { + infix fun mustEqual(expected: V): Unit = assert(value == expected) + + fun mustEqual(expected: V, message: () -> String): Unit = + assert(value == expected, message) + + override fun toString() = "Wrapper" +} diff --git a/plugins/power-assert/testData/helpers/InfixExtension.kt b/plugins/power-assert/testData/helpers/InfixExtension.kt new file mode 100644 index 00000000000..f74269aae70 --- /dev/null +++ b/plugins/power-assert/testData/helpers/InfixExtension.kt @@ -0,0 +1,5 @@ +package infix.extension + +infix fun V.mustEqual(expected: V): Unit = assert(this == expected) +fun V.mustEqual(expected: V, message: () -> String): Unit = + assert(this == expected, message) diff --git a/plugins/power-assert/testData/helpers/utils.kt b/plugins/power-assert/testData/helpers/utils.kt new file mode 100644 index 00000000000..1e27f36debe --- /dev/null +++ b/plugins/power-assert/testData/helpers/utils.kt @@ -0,0 +1,8 @@ +fun expectThrowableMessage(block: () -> Unit): String { + try { + block() + throw AssertionError("no failure") + } catch (e: Throwable) { + return e.message ?: throw AssertionError("no message") + } +} diff --git a/plugins/power-assert/tests-gen/org/jetbrains/kotlin/powerassert/FirLightTreeBlackBoxCodegenTestForPowerAssertGenerated.java b/plugins/power-assert/tests-gen/org/jetbrains/kotlin/powerassert/FirLightTreeBlackBoxCodegenTestForPowerAssertGenerated.java new file mode 100644 index 00000000000..7b886193515 --- /dev/null +++ b/plugins/power-assert/tests-gen/org/jetbrains/kotlin/powerassert/FirLightTreeBlackBoxCodegenTestForPowerAssertGenerated.java @@ -0,0 +1,593 @@ +/* + * Copyright 2010-2024 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.powerassert; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.GenerateTestsKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("plugins/power-assert/testData/codegen") +@TestDataPath("$PROJECT_ROOT") +public class FirLightTreeBlackBoxCodegenTestForPowerAssertGenerated extends AbstractFirLightTreeBlackBoxCodegenTestForPowerAssert { + @Test + public void testAllFilesPresentInCodegen() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("CheckCustomMessage.kt") + public void testCheckCustomMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/CheckCustomMessage.kt"); + } + + @Test + @TestMetadata("Constants.kt") + public void testConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/Constants.kt"); + } + + @Test + @TestMetadata("CustomLocalVariableMessage.kt") + public void testCustomLocalVariableMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/CustomLocalVariableMessage.kt"); + } + + @Test + @TestMetadata("CustomMessage.kt") + public void testCustomMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/CustomMessage.kt"); + } + + @Test + @TestMetadata("MemberFunctions.kt") + public void testMemberFunctions() throws Exception { + runTest("plugins/power-assert/testData/codegen/MemberFunctions.kt"); + } + + @Test + @TestMetadata("Multiline.kt") + public void testMultiline() throws Exception { + runTest("plugins/power-assert/testData/codegen/Multiline.kt"); + } + + @Test + @TestMetadata("RequireCustomMessage.kt") + public void testRequireCustomMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/RequireCustomMessage.kt"); + } + + @Test + @TestMetadata("Transformations.kt") + public void testTransformations() throws Exception { + runTest("plugins/power-assert/testData/codegen/Transformations.kt"); + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/arithmetic") + @TestDataPath("$PROJECT_ROOT") + public class Arithmetic { + @Test + public void testAllFilesPresentInArithmetic() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/arithmetic"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("InlineAddition.kt") + public void testInlineAddition() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineAddition.kt"); + } + + @Test + @TestMetadata("InlineDivision.kt") + public void testInlineDivision() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineDivision.kt"); + } + + @Test + @TestMetadata("InlineMultiplication.kt") + public void testInlineMultiplication() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.kt"); + } + + @Test + @TestMetadata("InlinePostfixDecrement.kt") + public void testInlinePostfixDecrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.kt"); + } + + @Test + @TestMetadata("InlinePostfixIncrement.kt") + public void testInlinePostfixIncrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.kt"); + } + + @Test + @TestMetadata("InlinePrefixDecrement.kt") + public void testInlinePrefixDecrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.kt"); + } + + @Test + @TestMetadata("InlinePrefixIncrement.kt") + public void testInlinePrefixIncrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.kt"); + } + + @Test + @TestMetadata("InlineSubtraction.kt") + public void testInlineSubtraction() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/boolean") + @TestDataPath("$PROJECT_ROOT") + public class Boolean { + @Test + public void testAllFilesPresentInBoolean() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/boolean"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("BooleanAnd.kt") + public void testBooleanAnd() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanAnd.kt"); + } + + @Test + @TestMetadata("BooleanMixWithAndFirst.kt") + public void testBooleanMixWithAndFirst() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.kt"); + } + + @Test + @TestMetadata("BooleanMixWithAndLast.kt") + public void testBooleanMixWithAndLast() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.kt"); + } + + @Test + @TestMetadata("BooleanMixWithOrFirst.kt") + public void testBooleanMixWithOrFirst() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.kt"); + } + + @Test + @TestMetadata("BooleanMixWithOrLast.kt") + public void testBooleanMixWithOrLast() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.kt"); + } + + @Test + @TestMetadata("BooleanOr.kt") + public void testBooleanOr() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanOr.kt"); + } + + @Test + @TestMetadata("BooleanShortCircuit.kt") + public void testBooleanShortCircuit() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/cast") + @TestDataPath("$PROJECT_ROOT") + public class Cast { + @Test + public void testAllFilesPresentInCast() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/cast"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("InstanceEquals.kt") + public void testInstanceEquals() throws Exception { + runTest("plugins/power-assert/testData/codegen/cast/InstanceEquals.kt"); + } + + @Test + @TestMetadata("InstanceNotEquals.kt") + public void testInstanceNotEquals() throws Exception { + runTest("plugins/power-assert/testData/codegen/cast/InstanceNotEquals.kt"); + } + + @Test + @TestMetadata("SmartCast.kt") + public void testSmartCast() throws Exception { + runTest("plugins/power-assert/testData/codegen/cast/SmartCast.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/dbg") + @TestDataPath("$PROJECT_ROOT") + public class Dbg { + @Test + public void testAllFilesPresentInDbg() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/dbg"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("DebugEntryFunction.kt") + public void testDebugEntryFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.kt"); + } + + @Test + @TestMetadata("DebugEntryFunctionComplexBooleans.kt") + public void testDebugEntryFunctionComplexBooleans() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.kt"); + } + + @Test + @TestMetadata("DebugEntryFunctionMessage.kt") + public void testDebugEntryFunctionMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.kt"); + } + + @Test + @TestMetadata("DebugEntryFunctionMessageComplexBooleans.kt") + public void testDebugEntryFunctionMessageComplexBooleans() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.kt"); + } + + @Test + @TestMetadata("DebugFunction.kt") + public void testDebugFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugFunction.kt"); + } + + @Test + @TestMetadata("DebugFunctionMessage.kt") + public void testDebugFunctionMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/infix") + @TestDataPath("$PROJECT_ROOT") + public class Infix { + @Test + public void testAllFilesPresentInInfix() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/infix"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("DispatchInfix.kt") + public void testDispatchInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfix.kt"); + } + + @Test + @TestMetadata("DispatchInfixConstantParameter.kt") + public void testDispatchInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("DispatchInfixConstantReceiver.kt") + public void testDispatchInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("DispatchInfixOnlyConstants.kt") + public void testDispatchInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("DispatchNonInfix.kt") + public void testDispatchNonInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfix.kt"); + } + + @Test + @TestMetadata("DispatchNonInfixConstantParameter.kt") + public void testDispatchNonInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("DispatchNonInfixConstantReceiver.kt") + public void testDispatchNonInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("DispatchNonInfixOnlyConstants.kt") + public void testDispatchNonInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("ExtensionInfix.kt") + public void testExtensionInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfix.kt"); + } + + @Test + @TestMetadata("ExtensionInfixConstantParameter.kt") + public void testExtensionInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("ExtensionInfixConstantReceiver.kt") + public void testExtensionInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("ExtensionInfixOnlyConstants.kt") + public void testExtensionInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfix.kt") + public void testExtensionNonInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfixConstantParameter.kt") + public void testExtensionNonInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfixConstantReceiver.kt") + public void testExtensionNonInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfixOnlyConstants.kt") + public void testExtensionNonInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("RegexFunction.kt") + public void testRegexFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/RegexFunction.kt"); + } + + @Test + @TestMetadata("RegexInfix.kt") + public void testRegexInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/RegexInfix.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/junit5") + @TestDataPath("$PROJECT_ROOT") + public class Junit5 { + @Test + public void testAllFilesPresentInJunit5() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/junit5"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("JunitAssertTrue.kt") + public void testJunitAssertTrue() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessage.kt") + public void testJunitAssertTrueMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessageSupplier.kt") + public void testJunitAssertTrueMessageSupplier() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessageSupplierVariable.kt") + public void testJunitAssertTrueMessageSupplierVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessageVariable.kt") + public void testJunitAssertTrueMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/kotlin-test") + @TestDataPath("$PROJECT_ROOT") + public class Kotlin_test { + @Test + public void testAllFilesPresentInKotlin_test() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/kotlin-test"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("AssertEquals.kt") + public void testAssertEquals() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.kt"); + } + + @Test + @TestMetadata("AssertEqualsMessage.kt") + public void testAssertEqualsMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.kt"); + } + + @Test + @TestMetadata("AssertEqualsMessageVariable.kt") + public void testAssertEqualsMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.kt"); + } + + @Test + @TestMetadata("AssertFalse.kt") + public void testAssertFalse() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.kt"); + } + + @Test + @TestMetadata("AssertFalseMessage.kt") + public void testAssertFalseMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.kt"); + } + + @Test + @TestMetadata("AssertFalseMessageVariable.kt") + public void testAssertFalseMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.kt"); + } + + @Test + @TestMetadata("AssertNotNull.kt") + public void testAssertNotNull() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.kt"); + } + + @Test + @TestMetadata("AssertNotNullMessage.kt") + public void testAssertNotNullMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.kt"); + } + + @Test + @TestMetadata("AssertNotNullMessageVariable.kt") + public void testAssertNotNullMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.kt"); + } + + @Test + @TestMetadata("AssertTrue.kt") + public void testAssertTrue() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.kt"); + } + + @Test + @TestMetadata("AssertTrueMessage.kt") + public void testAssertTrueMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.kt"); + } + + @Test + @TestMetadata("AssertTrueMessageVariable.kt") + public void testAssertTrueMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/lambda") + @TestDataPath("$PROJECT_ROOT") + public class Lambda { + @Test + public void testAllFilesPresentInLambda() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/lambda"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("AnonymousObject.kt") + public void testAnonymousObject() throws Exception { + runTest("plugins/power-assert/testData/codegen/lambda/AnonymousObject.kt"); + } + + @Test + @TestMetadata("ListOperationsAssert.kt") + public void testListOperationsAssert() throws Exception { + runTest("plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.kt"); + } + + @Test + @TestMetadata("ListOperationsRequire.kt") + public void testListOperationsRequire() throws Exception { + runTest("plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/nullsafe") + @TestDataPath("$PROJECT_ROOT") + public class Nullsafe { + @Test + public void testAllFilesPresentInNullsafe() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/nullsafe"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("ConditionalAccess.kt") + public void testConditionalAccess() throws Exception { + runTest("plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/operator") + @TestDataPath("$PROJECT_ROOT") + public class Operator { + @Test + public void testAllFilesPresentInOperator() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/operator"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("ContainsFunction.kt") + public void testContainsFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/ContainsFunction.kt"); + } + + @Test + @TestMetadata("ContainsOperator.kt") + public void testContainsOperator() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/ContainsOperator.kt"); + } + + @Test + @TestMetadata("NegativeContainsFunction.kt") + public void testNegativeContainsFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.kt"); + } + + @Test + @TestMetadata("NegativeContainsOperator.kt") + public void testNegativeContainsOperator() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/parameters") + @TestDataPath("$PROJECT_ROOT") + public class Parameters { + @Test + public void testAllFilesPresentInParameters() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/parameters"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("VarargParameter.kt") + public void testVarargParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/parameters/VarargParameter.kt"); + } + } +} diff --git a/plugins/power-assert/tests-gen/org/jetbrains/kotlin/powerassert/IrBlackBoxCodegenTestForPowerAssertGenerated.java b/plugins/power-assert/tests-gen/org/jetbrains/kotlin/powerassert/IrBlackBoxCodegenTestForPowerAssertGenerated.java new file mode 100644 index 00000000000..f6ff1a29be6 --- /dev/null +++ b/plugins/power-assert/tests-gen/org/jetbrains/kotlin/powerassert/IrBlackBoxCodegenTestForPowerAssertGenerated.java @@ -0,0 +1,593 @@ +/* + * Copyright 2010-2024 JetBrains s.r.o. and Kotlin Programming Language contributors. + * Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file. + */ + +package org.jetbrains.kotlin.powerassert; + +import com.intellij.testFramework.TestDataPath; +import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TargetBackend; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; + +import java.io.File; +import java.util.regex.Pattern; + +/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.GenerateTestsKt}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("plugins/power-assert/testData/codegen") +@TestDataPath("$PROJECT_ROOT") +public class IrBlackBoxCodegenTestForPowerAssertGenerated extends AbstractIrBlackBoxCodegenTestForPowerAssert { + @Test + public void testAllFilesPresentInCodegen() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("CheckCustomMessage.kt") + public void testCheckCustomMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/CheckCustomMessage.kt"); + } + + @Test + @TestMetadata("Constants.kt") + public void testConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/Constants.kt"); + } + + @Test + @TestMetadata("CustomLocalVariableMessage.kt") + public void testCustomLocalVariableMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/CustomLocalVariableMessage.kt"); + } + + @Test + @TestMetadata("CustomMessage.kt") + public void testCustomMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/CustomMessage.kt"); + } + + @Test + @TestMetadata("MemberFunctions.kt") + public void testMemberFunctions() throws Exception { + runTest("plugins/power-assert/testData/codegen/MemberFunctions.kt"); + } + + @Test + @TestMetadata("Multiline.kt") + public void testMultiline() throws Exception { + runTest("plugins/power-assert/testData/codegen/Multiline.kt"); + } + + @Test + @TestMetadata("RequireCustomMessage.kt") + public void testRequireCustomMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/RequireCustomMessage.kt"); + } + + @Test + @TestMetadata("Transformations.kt") + public void testTransformations() throws Exception { + runTest("plugins/power-assert/testData/codegen/Transformations.kt"); + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/arithmetic") + @TestDataPath("$PROJECT_ROOT") + public class Arithmetic { + @Test + public void testAllFilesPresentInArithmetic() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/arithmetic"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("InlineAddition.kt") + public void testInlineAddition() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineAddition.kt"); + } + + @Test + @TestMetadata("InlineDivision.kt") + public void testInlineDivision() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineDivision.kt"); + } + + @Test + @TestMetadata("InlineMultiplication.kt") + public void testInlineMultiplication() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineMultiplication.kt"); + } + + @Test + @TestMetadata("InlinePostfixDecrement.kt") + public void testInlinePostfixDecrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePostfixDecrement.kt"); + } + + @Test + @TestMetadata("InlinePostfixIncrement.kt") + public void testInlinePostfixIncrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePostfixIncrement.kt"); + } + + @Test + @TestMetadata("InlinePrefixDecrement.kt") + public void testInlinePrefixDecrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePrefixDecrement.kt"); + } + + @Test + @TestMetadata("InlinePrefixIncrement.kt") + public void testInlinePrefixIncrement() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlinePrefixIncrement.kt"); + } + + @Test + @TestMetadata("InlineSubtraction.kt") + public void testInlineSubtraction() throws Exception { + runTest("plugins/power-assert/testData/codegen/arithmetic/InlineSubtraction.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/boolean") + @TestDataPath("$PROJECT_ROOT") + public class Boolean { + @Test + public void testAllFilesPresentInBoolean() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/boolean"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("BooleanAnd.kt") + public void testBooleanAnd() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanAnd.kt"); + } + + @Test + @TestMetadata("BooleanMixWithAndFirst.kt") + public void testBooleanMixWithAndFirst() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndFirst.kt"); + } + + @Test + @TestMetadata("BooleanMixWithAndLast.kt") + public void testBooleanMixWithAndLast() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithAndLast.kt"); + } + + @Test + @TestMetadata("BooleanMixWithOrFirst.kt") + public void testBooleanMixWithOrFirst() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrFirst.kt"); + } + + @Test + @TestMetadata("BooleanMixWithOrLast.kt") + public void testBooleanMixWithOrLast() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanMixWithOrLast.kt"); + } + + @Test + @TestMetadata("BooleanOr.kt") + public void testBooleanOr() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanOr.kt"); + } + + @Test + @TestMetadata("BooleanShortCircuit.kt") + public void testBooleanShortCircuit() throws Exception { + runTest("plugins/power-assert/testData/codegen/boolean/BooleanShortCircuit.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/cast") + @TestDataPath("$PROJECT_ROOT") + public class Cast { + @Test + public void testAllFilesPresentInCast() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/cast"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("InstanceEquals.kt") + public void testInstanceEquals() throws Exception { + runTest("plugins/power-assert/testData/codegen/cast/InstanceEquals.kt"); + } + + @Test + @TestMetadata("InstanceNotEquals.kt") + public void testInstanceNotEquals() throws Exception { + runTest("plugins/power-assert/testData/codegen/cast/InstanceNotEquals.kt"); + } + + @Test + @TestMetadata("SmartCast.kt") + public void testSmartCast() throws Exception { + runTest("plugins/power-assert/testData/codegen/cast/SmartCast.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/dbg") + @TestDataPath("$PROJECT_ROOT") + public class Dbg { + @Test + public void testAllFilesPresentInDbg() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/dbg"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("DebugEntryFunction.kt") + public void testDebugEntryFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunction.kt"); + } + + @Test + @TestMetadata("DebugEntryFunctionComplexBooleans.kt") + public void testDebugEntryFunctionComplexBooleans() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionComplexBooleans.kt"); + } + + @Test + @TestMetadata("DebugEntryFunctionMessage.kt") + public void testDebugEntryFunctionMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessage.kt"); + } + + @Test + @TestMetadata("DebugEntryFunctionMessageComplexBooleans.kt") + public void testDebugEntryFunctionMessageComplexBooleans() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugEntryFunctionMessageComplexBooleans.kt"); + } + + @Test + @TestMetadata("DebugFunction.kt") + public void testDebugFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugFunction.kt"); + } + + @Test + @TestMetadata("DebugFunctionMessage.kt") + public void testDebugFunctionMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/dbg/DebugFunctionMessage.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/infix") + @TestDataPath("$PROJECT_ROOT") + public class Infix { + @Test + public void testAllFilesPresentInInfix() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/infix"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("DispatchInfix.kt") + public void testDispatchInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfix.kt"); + } + + @Test + @TestMetadata("DispatchInfixConstantParameter.kt") + public void testDispatchInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("DispatchInfixConstantReceiver.kt") + public void testDispatchInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("DispatchInfixOnlyConstants.kt") + public void testDispatchInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("DispatchNonInfix.kt") + public void testDispatchNonInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfix.kt"); + } + + @Test + @TestMetadata("DispatchNonInfixConstantParameter.kt") + public void testDispatchNonInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("DispatchNonInfixConstantReceiver.kt") + public void testDispatchNonInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("DispatchNonInfixOnlyConstants.kt") + public void testDispatchNonInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/DispatchNonInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("ExtensionInfix.kt") + public void testExtensionInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfix.kt"); + } + + @Test + @TestMetadata("ExtensionInfixConstantParameter.kt") + public void testExtensionInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("ExtensionInfixConstantReceiver.kt") + public void testExtensionInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("ExtensionInfixOnlyConstants.kt") + public void testExtensionInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfix.kt") + public void testExtensionNonInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfix.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfixConstantParameter.kt") + public void testExtensionNonInfixConstantParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantParameter.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfixConstantReceiver.kt") + public void testExtensionNonInfixConstantReceiver() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfixConstantReceiver.kt"); + } + + @Test + @TestMetadata("ExtensionNonInfixOnlyConstants.kt") + public void testExtensionNonInfixOnlyConstants() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/ExtensionNonInfixOnlyConstants.kt"); + } + + @Test + @TestMetadata("RegexFunction.kt") + public void testRegexFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/RegexFunction.kt"); + } + + @Test + @TestMetadata("RegexInfix.kt") + public void testRegexInfix() throws Exception { + runTest("plugins/power-assert/testData/codegen/infix/RegexInfix.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/junit5") + @TestDataPath("$PROJECT_ROOT") + public class Junit5 { + @Test + public void testAllFilesPresentInJunit5() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/junit5"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("JunitAssertTrue.kt") + public void testJunitAssertTrue() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrue.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessage.kt") + public void testJunitAssertTrueMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessage.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessageSupplier.kt") + public void testJunitAssertTrueMessageSupplier() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplier.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessageSupplierVariable.kt") + public void testJunitAssertTrueMessageSupplierVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageSupplierVariable.kt"); + } + + @Test + @TestMetadata("JunitAssertTrueMessageVariable.kt") + public void testJunitAssertTrueMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/junit5/JunitAssertTrueMessageVariable.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/kotlin-test") + @TestDataPath("$PROJECT_ROOT") + public class Kotlin_test { + @Test + public void testAllFilesPresentInKotlin_test() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/kotlin-test"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("AssertEquals.kt") + public void testAssertEquals() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertEquals.kt"); + } + + @Test + @TestMetadata("AssertEqualsMessage.kt") + public void testAssertEqualsMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessage.kt"); + } + + @Test + @TestMetadata("AssertEqualsMessageVariable.kt") + public void testAssertEqualsMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertEqualsMessageVariable.kt"); + } + + @Test + @TestMetadata("AssertFalse.kt") + public void testAssertFalse() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertFalse.kt"); + } + + @Test + @TestMetadata("AssertFalseMessage.kt") + public void testAssertFalseMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessage.kt"); + } + + @Test + @TestMetadata("AssertFalseMessageVariable.kt") + public void testAssertFalseMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertFalseMessageVariable.kt"); + } + + @Test + @TestMetadata("AssertNotNull.kt") + public void testAssertNotNull() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertNotNull.kt"); + } + + @Test + @TestMetadata("AssertNotNullMessage.kt") + public void testAssertNotNullMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessage.kt"); + } + + @Test + @TestMetadata("AssertNotNullMessageVariable.kt") + public void testAssertNotNullMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertNotNullMessageVariable.kt"); + } + + @Test + @TestMetadata("AssertTrue.kt") + public void testAssertTrue() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertTrue.kt"); + } + + @Test + @TestMetadata("AssertTrueMessage.kt") + public void testAssertTrueMessage() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessage.kt"); + } + + @Test + @TestMetadata("AssertTrueMessageVariable.kt") + public void testAssertTrueMessageVariable() throws Exception { + runTest("plugins/power-assert/testData/codegen/kotlin-test/AssertTrueMessageVariable.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/lambda") + @TestDataPath("$PROJECT_ROOT") + public class Lambda { + @Test + public void testAllFilesPresentInLambda() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/lambda"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("AnonymousObject.kt") + public void testAnonymousObject() throws Exception { + runTest("plugins/power-assert/testData/codegen/lambda/AnonymousObject.kt"); + } + + @Test + @TestMetadata("ListOperationsAssert.kt") + public void testListOperationsAssert() throws Exception { + runTest("plugins/power-assert/testData/codegen/lambda/ListOperationsAssert.kt"); + } + + @Test + @TestMetadata("ListOperationsRequire.kt") + public void testListOperationsRequire() throws Exception { + runTest("plugins/power-assert/testData/codegen/lambda/ListOperationsRequire.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/nullsafe") + @TestDataPath("$PROJECT_ROOT") + public class Nullsafe { + @Test + public void testAllFilesPresentInNullsafe() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/nullsafe"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("ConditionalAccess.kt") + public void testConditionalAccess() throws Exception { + runTest("plugins/power-assert/testData/codegen/nullsafe/ConditionalAccess.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/operator") + @TestDataPath("$PROJECT_ROOT") + public class Operator { + @Test + public void testAllFilesPresentInOperator() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/operator"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("ContainsFunction.kt") + public void testContainsFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/ContainsFunction.kt"); + } + + @Test + @TestMetadata("ContainsOperator.kt") + public void testContainsOperator() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/ContainsOperator.kt"); + } + + @Test + @TestMetadata("NegativeContainsFunction.kt") + public void testNegativeContainsFunction() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/NegativeContainsFunction.kt"); + } + + @Test + @TestMetadata("NegativeContainsOperator.kt") + public void testNegativeContainsOperator() throws Exception { + runTest("plugins/power-assert/testData/codegen/operator/NegativeContainsOperator.kt"); + } + } + + @Nested + @TestMetadata("plugins/power-assert/testData/codegen/parameters") + @TestDataPath("$PROJECT_ROOT") + public class Parameters { + @Test + public void testAllFilesPresentInParameters() throws Exception { + KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/power-assert/testData/codegen/parameters"), Pattern.compile("^(.+)\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JVM_IR, true); + } + + @Test + @TestMetadata("VarargParameter.kt") + public void testVarargParameter() throws Exception { + runTest("plugins/power-assert/testData/codegen/parameters/VarargParameter.kt"); + } + } +}