// 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.structureView;

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.test.TestMetadata;
import org.junit.runner.RunWith;

/**
 * This class is generated by {@link org.jetbrains.kotlin.testGenerator.generator.TestGenerator}.
 * DO NOT MODIFY MANUALLY.
 */
@SuppressWarnings("all")
@TestRoot("code-insight/kotlin.code-insight.k2")
@TestDataPath("$CONTENT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
@TestMetadata("testData/gotoSuperDeclarationsHandler")
public abstract class KotlinGoToSuperDeclarationsHandlerTestGenerated extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("testData/gotoSuperDeclarationsHandler/classes")
    public abstract static class Classes extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("testData/gotoSuperDeclarationsHandler/classes/incorrectCode")
        public static class IncorrectCode extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            @TestMetadata("extendClassWithoutSuperConstructorCall.kt")
            public void testExtendClassWithoutSuperConstructorCall() throws Exception {
                performTest();
            }

            @TestMetadata("extendFinalClass.kt")
            public void testExtendFinalClass() throws Exception {
                performTest();
            }
        }

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

            @TestMetadata("classImplemeningInterfaces.kt")
            public void testClassImplemeningInterfaces() throws Exception {
                performTest();
            }

            @TestMetadata("classObject.kt")
            public void testClassObject() throws Exception {
                performTest();
            }

            @TestMetadata("classWithDeepHeiarchy.kt")
            public void testClassWithDeepHeiarchy() throws Exception {
                performTest();
            }

            @TestMetadata("noSuper.kt")
            public void testNoSuper() throws Exception {
                performTest();
            }

            @TestMetadata("singleSuperClass.kt")
            public void testSingleSuperClass() throws Exception {
                performTest();
            }

            @TestMetadata("withJavaSuperClass.kt")
            public void testWithJavaSuperClass() throws Exception {
                performTest();
            }
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("testData/gotoSuperDeclarationsHandler/methods")
    public abstract static class Methods extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("testData/gotoSuperDeclarationsHandler/methods/incorrectCode")
        public static class IncorrectCode extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            @TestMetadata("overideMethodWithoutOverrideModifier.kt")
            public void testOverideMethodWithoutOverrideModifier() throws Exception {
                performTest();
            }

            @TestMetadata("overrideFinalMethod.kt")
            public void testOverrideFinalMethod() throws Exception {
                performTest();
            }

            @TestMetadata("overrideFinalMethodInFinalClass.kt")
            public void testOverrideFinalMethodInFinalClass() throws Exception {
                performTest();
            }
        }

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

            @TestMetadata("intersectionOverrideMethods.kt")
            public void testIntersectionOverrideMethods() throws Exception {
                performTest();
            }

            @TestMetadata("multipleSuperMethodsFromInterfaces.kt")
            public void testMultipleSuperMethodsFromInterfaces() throws Exception {
                performTest();
            }

            @TestMetadata("singleSuperMethod.kt")
            public void testSingleSuperMethod() throws Exception {
                performTest();
            }

            @TestMetadata("withJavaSuperClass.kt")
            public void testWithJavaSuperClass() throws Exception {
                performTest();
            }
        }
    }

    @RunWith(JUnit3RunnerWithInners.class)
    @TestMetadata("testData/gotoSuperDeclarationsHandler/properties")
    public abstract static class Properties extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
        @RunWith(JUnit3RunnerWithInners.class)
        @TestMetadata("testData/gotoSuperDeclarationsHandler/properties/incorrectCode")
        public static class IncorrectCode extends AbstractKotlinGoToSuperDeclarationsHandlerTest {
            @java.lang.Override
            @org.jetbrains.annotations.NotNull
            public final KotlinPluginMode getPluginMode() {
                return KotlinPluginMode.K2;
            }

            @TestMetadata("overidePropertyWithoutOverrideModifier.kt")
            public void testOveridePropertyWithoutOverrideModifier() throws Exception {
                performTest();
            }

            @TestMetadata("overrideFinalProperty.kt")
            public void testOverrideFinalProperty() throws Exception {
                performTest();
            }

            @TestMetadata("overrideFinalPropertyInFinalClass.kt")
            public void testOverrideFinalPropertyInFinalClass() throws Exception {
                performTest();
            }
        }

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

            @TestMetadata("intersectionOverrideProperties.kt")
            public void testIntersectionOverrideProperties() throws Exception {
                performTest();
            }

            @TestMetadata("multipleSuperPropertiesFromInterfaces.kt")
            public void testMultipleSuperPropertiesFromInterfaces() throws Exception {
                performTest();
            }

            @TestMetadata("primaryConstructorProperty.kt")
            public void testPrimaryConstructorProperty() throws Exception {
                performTest();
            }

            @TestMetadata("primaryConstructorPropertyInSuper.kt")
            public void testPrimaryConstructorPropertyInSuper() throws Exception {
                performTest();
            }

            @TestMetadata("singleSuperProperty.kt")
            public void testSingleSuperProperty() throws Exception {
                performTest();
            }
        }
    }
}
