// Copyright 2000-2025 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.

package org.jetbrains.kotlin.idea.k2.highlighting.metaInfoKmp;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.idea.base.plugin.KotlinPluginMode;
import org.jetbrains.kotlin.idea.base.test.TestRoot;
import org.jetbrains.kotlin.idea.test.JUnit3RunnerWithInners;
import org.jetbrains.kotlin.idea.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TestMetadata;
import org.junit.runner.RunWith;
import org.jetbrains.kotlin.idea.test.kmp.KMPTestPlatform;
import org.jetbrains.kotlin.idea.k2.highlighting.AbstractK2HighlightingMetaInfoTest;

/**
 * This class is generated by {@link org.jetbrains.kotlin.testGenerator.generator.TestGenerator}.
 * DO NOT MODIFY MANUALLY.
 */
@SuppressWarnings("all")
@TestRoot("highlighting/highlighting-k2")
@TestDataPath("$CONTENT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
@TestMetadata("../../idea/tests/testData/highlighterMetaInfo")
public abstract class CommonNativeJvmK2HighlightingMetaInfoTestGenerated extends AbstractK2HighlightingMetaInfoTest {
    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/highlighterMetaInfo/diagnostics")
    public static class Diagnostics extends AbstractK2HighlightingMetaInfoTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        @java.lang.Override
        public KMPTestPlatform getTestPlatform() {
            return KMPTestPlatform.CommonNativeJvm;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
        }

        @TestMetadata("classRedeclaration.kt")
        public void testClassRedeclaration() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/diagnostics/classRedeclaration.kt");
        }

        @TestMetadata("dataClassFromLibrary.kt")
        public void testDataClassFromLibrary() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/diagnostics/dataClassFromLibrary.kt");
        }

        @TestMetadata("javaCodeInKotlinFile1.kt")
        public void testJavaCodeInKotlinFile1() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/diagnostics/javaCodeInKotlinFile1.kt");
        }

        @TestMetadata("mppIsNotEnabled.kt")
        public void testMppIsNotEnabled() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/diagnostics/mppIsNotEnabled.kt");
        }

        @TestMetadata("uselessCast.kt")
        public void testUselessCast() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/diagnostics/uselessCast.kt");
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/highlighterMetaInfo/dsl")
    public static class Dsl extends AbstractK2HighlightingMetaInfoTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        @java.lang.Override
        public KMPTestPlatform getTestPlatform() {
            return KMPTestPlatform.CommonNativeJvm;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
        }

        @TestMetadata("AnnotatedTypeParameter.kt")
        public void testAnnotatedTypeParameter() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/AnnotatedTypeParameter.kt");
        }

        @TestMetadata("AnnotatedTypeSpecifier.kt")
        public void testAnnotatedTypeSpecifier() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/AnnotatedTypeSpecifier.kt");
        }

        @TestMetadata("ImplementsDslInterface.kt")
        public void testImplementsDslInterface() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/ImplementsDslInterface.kt");
        }

        @TestMetadata("ImplicitReceiver.kt")
        public void testImplicitReceiver() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/ImplicitReceiver.kt");
        }

        @TestMetadata("NestedReceivers.kt")
        public void testNestedReceivers() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/NestedReceivers.kt");
        }

        @TestMetadata("RegularDsl.kt")
        public void testRegularDsl() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/RegularDsl.kt");
        }

        @TestMetadata("SubclassOfDslClass.kt")
        public void testSubclassOfDslClass() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/SubclassOfDslClass.kt");
        }

        @TestMetadata("TopLevelFunctions.kt")
        public void testTopLevelFunctions() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/dsl/TopLevelFunctions.kt");
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/highlighterMetaInfo/focusMode")
    public static class FocusMode extends AbstractK2HighlightingMetaInfoTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        @java.lang.Override
        public KMPTestPlatform getTestPlatform() {
            return KMPTestPlatform.CommonNativeJvm;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
        }

        @TestMetadata("SimpleClass.kt")
        public void testSimpleClass() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/focusMode/SimpleClass.kt");
        }

        @TestMetadata("SimpleClassInFunction.kt")
        public void testSimpleClassInFunction() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/focusMode/SimpleClassInFunction.kt");
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/highlighterMetaInfo/smartCasts")
    public static class SmartCasts extends AbstractK2HighlightingMetaInfoTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        @java.lang.Override
        public KMPTestPlatform getTestPlatform() {
            return KMPTestPlatform.CommonNativeJvm;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
        }

        @TestMetadata("Explicit.kt")
        public void testExplicit() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Explicit.kt");
        }

        @TestMetadata("Explicit_qualifiedCalls.kt")
        public void testExplicit_qualifiedCalls() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Explicit_qualifiedCalls.kt");
        }

        @TestMetadata("Explicit_withInvokeCall.kt")
        public void testExplicit_withInvokeCall() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Explicit_withInvokeCall.kt");
        }

        @TestMetadata("ImplicitAndExplicit_functions.kt")
        public void testImplicitAndExplicit_functions() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/ImplicitAndExplicit_functions.kt");
        }

        @TestMetadata("ImplicitAndExplicit_operators.kt")
        public void testImplicitAndExplicit_operators() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/ImplicitAndExplicit_operators.kt");
        }

        @TestMetadata("ImplicitAndExplicit_properties.kt")
        public void testImplicitAndExplicit_properties() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/ImplicitAndExplicit_properties.kt");
        }

        @TestMetadata("Implicit_intersection.kt")
        public void testImplicit_intersection() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Implicit_intersection.kt");
        }

        @TestMetadata("Implicit_stable.kt")
        public void testImplicit_stable() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Implicit_stable.kt");
        }

        @TestMetadata("Invokes.kt")
        public void testInvokes() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Invokes.kt");
        }

        @TestMetadata("kt77707.kt")
        public void testKt77707() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/kt77707.kt");
        }

        @TestMetadata("Redundant.kt")
        public void testRedundant() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Redundant.kt");
        }

        @TestMetadata("RedundantWithExpectedType.kt")
        public void testRedundantWithExpectedType() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/RedundantWithExpectedType.kt");
        }

        @TestMetadata("Unstable_explicitReceiver.kt")
        public void testUnstable_explicitReceiver() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Unstable_explicitReceiver.kt");
        }

        @TestMetadata("Unstable_implicitReceiver.kt")
        public void testUnstable_implicitReceiver() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/smartCasts/Unstable_implicitReceiver.kt");
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/highlighterMetaInfo")
    public static class Uncategorized extends AbstractK2HighlightingMetaInfoTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        @java.lang.Override
        public KMPTestPlatform getTestPlatform() {
            return KMPTestPlatform.CommonNativeJvm;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
        }

        @TestMetadata("Annotations.kt")
        public void testAnnotations() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Annotations.kt");
        }

        @TestMetadata("AnnotationsInDumbMode.kt")
        public void testAnnotationsInDumbMode() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/AnnotationsInDumbMode.kt");
        }

        @TestMetadata("AnnotationsUseSiteTargetAll.kt")
        public void testAnnotationsUseSiteTargetAll() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/AnnotationsUseSiteTargetAll.kt");
        }

        @TestMetadata("AutoCreatedItParameter.kt")
        public void testAutoCreatedItParameter() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/AutoCreatedItParameter.kt");
        }

        @TestMetadata("DefinitelyNotNullType.kt")
        public void testDefinitelyNotNullType() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/DefinitelyNotNullType.kt");
        }

        @TestMetadata("deprecation.kt")
        public void testDeprecation() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/deprecation.kt");
        }

        @TestMetadata("Destructuring.kt")
        public void testDestructuring() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Destructuring.kt");
        }

        @TestMetadata("Enums.kt")
        public void testEnums() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Enums.kt");
        }

        @TestMetadata("ExplicitInvokeCall.kt")
        public void testExplicitInvokeCall() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/ExplicitInvokeCall.kt");
        }

        @TestMetadata("Field.kt")
        public void testField() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Field.kt");
        }

        @TestMetadata("Functions.kt")
        public void testFunctions() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Functions.kt");
        }

        @TestMetadata("InvokeCall.kt")
        public void testInvokeCall() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/InvokeCall.kt");
        }

        @TestMetadata("KDoc.kt")
        public void testKDoc() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/KDoc.kt");
        }

        @TestMetadata("Labels.kt")
        public void testLabels() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Labels.kt");
        }

        @TestMetadata("mismatchPackageDirectory.kt")
        public void testMismatchPackageDirectory() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectory.kt");
        }

        @TestMetadata("mismatchPackageDirectoryFileLevelProblem.kt")
        public void testMismatchPackageDirectoryFileLevelProblem() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblem.kt");
        }

        @TestMetadata("mismatchPackageDirectoryFileLevelProblemDeclarations.kt")
        public void testMismatchPackageDirectoryFileLevelProblemDeclarations() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/mismatchPackageDirectoryFileLevelProblemDeclarations.kt");
        }

        @TestMetadata("NamedArguments.kt")
        public void testNamedArguments() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/NamedArguments.kt");
        }

        @TestMetadata("NamedDestructuring.kt")
        public void testNamedDestructuring() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/NamedDestructuring.kt");
        }

        @TestMetadata("NonNullAssertion.kt")
        public void testNonNullAssertion() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/NonNullAssertion.kt");
        }

        @TestMetadata("Object.kt")
        public void testObject() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Object.kt");
        }

        @TestMetadata("Parameters.kt")
        public void testParameters() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Parameters.kt");
        }

        @TestMetadata("PropertiesWithPropertyDeclarations.kt")
        public void testPropertiesWithPropertyDeclarations() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/PropertiesWithPropertyDeclarations.kt");
        }

        @TestMetadata("PropertiesWithPropertyDeclarationsInDumbMode.kt")
        public void testPropertiesWithPropertyDeclarationsInDumbMode() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/PropertiesWithPropertyDeclarationsInDumbMode.kt");
        }

        @TestMetadata("Suspend.kt")
        public void testSuspend() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Suspend.kt");
        }

        @TestMetadata("Todo.kt")
        public void testTodo() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Todo.kt");
        }

        @TestMetadata("TypeAlias.kt")
        public void testTypeAlias() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/TypeAlias.kt");
        }

        @TestMetadata("TypesAndAnnotations.kt")
        public void testTypesAndAnnotations() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/TypesAndAnnotations.kt");
        }

        @TestMetadata("Variables.kt")
        public void testVariables() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/Variables.kt");
        }

        @TestMetadata("VariablesAsFunctions.kt")
        public void testVariablesAsFunctions() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/VariablesAsFunctions.kt");
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("../../idea/tests/testData/highlighterMetaInfo/unresolved")
    public static class Unresolved extends AbstractK2HighlightingMetaInfoTest {
        @java.lang.Override
        @org.jetbrains.annotations.NotNull
        public final KotlinPluginMode getPluginMode() {
            return KotlinPluginMode.K2;
        }

        @java.lang.Override
        public KMPTestPlatform getTestPlatform() {
            return KMPTestPlatform.CommonNativeJvm;
        }

        private void runTest(String testDataFilePath) throws Exception {
            KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
        }

        @TestMetadata("unresolvedImport.kt")
        public void testUnresolvedImport() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/unresolved/unresolvedImport.kt");
        }

        @TestMetadata("unresolvedLabel.kt")
        public void testUnresolvedLabel() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/unresolved/unresolvedLabel.kt");
        }

        @TestMetadata("unresolvedReference.kt")
        public void testUnresolvedReference() throws Exception {
            runTest("../../idea/tests/testData/highlighterMetaInfo/unresolved/unresolvedReference.kt");
        }
    }
}
