/*
 * 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.analysis.low.level.api.fir;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.test.util.KtTestUtil;
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.analysis.api.GenerateAnalysisApiTestsKt}. DO NOT MODIFY MANUALLY */
@SuppressWarnings("all")
@TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir")
@TestDataPath("$PROJECT_ROOT")
public class ScriptGetOrBuildFirTestGenerated extends AbstractScriptGetOrBuildFirTest {
    @Test
    public void testAllFilesPresentInGetOrBuildFir() throws Exception {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/annotations")
    @TestDataPath("$PROJECT_ROOT")
    public class Annotations {
        @Test
        public void testAllFilesPresentInAnnotations() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/annotations"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("annotationApplicationArgumentOnStatement.kts")
        public void testAnnotationApplicationArgumentOnStatement() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/annotationApplicationArgumentOnStatement.kts");
        }

        @Test
        @TestMetadata("annotationApplicationArgumentScript.kts")
        public void testAnnotationApplicationArgumentScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/annotationApplicationArgumentScript.kts");
        }

        @Test
        @TestMetadata("annotationApplicationCallExpressionScript.kts")
        public void testAnnotationApplicationCallExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/annotationApplicationCallExpressionScript.kts");
        }

        @Test
        @TestMetadata("annotationOnReturnTypeScript.kts")
        public void testAnnotationOnReturnTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/annotationOnReturnTypeScript.kts");
        }

        @Test
        @TestMetadata("fileAnnotationScript.kts")
        public void testFileAnnotationScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/fileAnnotationScript.kts");
        }

        @Test
        @TestMetadata("retentionValueScript.kts")
        public void testRetentionValueScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/retentionValueScript.kts");
        }

        @Test
        @TestMetadata("statementAnnotation.kts")
        public void testStatementAnnotation() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/statementAnnotation.kts");
        }

        @Test
        @TestMetadata("superCallAnnotationScript.kts")
        public void testSuperCallAnnotationScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/superCallAnnotationScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnConstructorParameterExpressionScript.kts")
        public void testTypeOnAnnotationOnConstructorParameterExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnConstructorParameterExpressionScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnConstructorParameterScript.kts")
        public void testTypeOnAnnotationOnConstructorParameterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnConstructorParameterScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnConstructorPropertyScript.kts")
        public void testTypeOnAnnotationOnConstructorPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnConstructorPropertyScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnConstructorPropertyWithArgumentsScript.kts")
        public void testTypeOnAnnotationOnConstructorPropertyWithArgumentsScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnConstructorPropertyWithArgumentsScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnFunctionParameterScript.kts")
        public void testTypeOnAnnotationOnFunctionParameterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnFunctionParameterScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnFunctionParameterWithArgumentsScript.kts")
        public void testTypeOnAnnotationOnFunctionParameterWithArgumentsScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnFunctionParameterWithArgumentsScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnReceiverFunctionScript.kts")
        public void testTypeOnAnnotationOnReceiverFunctionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnReceiverFunctionScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnReceiverParameterScript.kts")
        public void testTypeOnAnnotationOnReceiverParameterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnReceiverParameterScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnReceiverPropertyCallScript.kts")
        public void testTypeOnAnnotationOnReceiverPropertyCallScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnReceiverPropertyCallScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnReceiverPropertyScript.kts")
        public void testTypeOnAnnotationOnReceiverPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnReceiverPropertyScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnReturnFunctionScript.kts")
        public void testTypeOnAnnotationOnReturnFunctionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnReturnFunctionScript.kts");
        }

        @Test
        @TestMetadata("typeOnAnnotationOnReturnPropertyScript.kts")
        public void testTypeOnAnnotationOnReturnPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/typeOnAnnotationOnReturnPropertyScript.kts");
        }

        @Nested
        @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite")
        @TestDataPath("$PROJECT_ROOT")
        public class UseSite {
            @Test
            public void testAllFilesPresentInUseSite() throws Exception {
                KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
            }

            @Test
            @TestMetadata("delegateScript.kts")
            public void testDelegateScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/delegateScript.kts");
            }

            @Test
            @TestMetadata("fieldScript.kts")
            public void testFieldScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/fieldScript.kts");
            }

            @Test
            @TestMetadata("fileScript.kts")
            public void testFileScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/fileScript.kts");
            }

            @Test
            @TestMetadata("getterScript.kts")
            public void testGetterScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/getterScript.kts");
            }

            @Test
            @TestMetadata("paramScript.kts")
            public void testParamScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/paramScript.kts");
            }

            @Test
            @TestMetadata("propertyScript.kts")
            public void testPropertyScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/propertyScript.kts");
            }

            @Test
            @TestMetadata("setParamScript.kts")
            public void testSetParamScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/setParamScript.kts");
            }

            @Test
            @TestMetadata("setterScript.kts")
            public void testSetterScript() throws Exception {
                runTest("analysis/low-level-api-fir/testData/getOrBuildFir/annotations/useSite/setterScript.kts");
            }
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/calls")
    @TestDataPath("$PROJECT_ROOT")
    public class Calls {
        @Test
        public void testAllFilesPresentInCalls() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/calls"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("argsFromFunction.kts")
        public void testArgsFromFunction() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/argsFromFunction.kts");
        }

        @Test
        @TestMetadata("argsFromInit.kts")
        public void testArgsFromInit() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/argsFromInit.kts");
        }

        @Test
        @TestMetadata("argsFromMemberFunction.kts")
        public void testArgsFromMemberFunction() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/argsFromMemberFunction.kts");
        }

        @Test
        @TestMetadata("argsFromMemberProperty.kts")
        public void testArgsFromMemberProperty() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/argsFromMemberProperty.kts");
        }

        @Test
        @TestMetadata("argsFromProperty.kts")
        public void testArgsFromProperty() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/argsFromProperty.kts");
        }

        @Test
        @TestMetadata("argsFromStatement.kts")
        public void testArgsFromStatement() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/argsFromStatement.kts");
        }

        @Test
        @TestMetadata("callArgumentScript.kts")
        public void testCallArgumentScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/callArgumentScript.kts");
        }

        @Test
        @TestMetadata("callInsideLambdaInsideSuperCallAndExplicitConstructorScript.kts")
        public void testCallInsideLambdaInsideSuperCallAndExplicitConstructorScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/callInsideLambdaInsideSuperCallAndExplicitConstructorScript.kts");
        }

        @Test
        @TestMetadata("callOnePropertyFromAnother.kts")
        public void testCallOnePropertyFromAnother() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/callOnePropertyFromAnother.kts");
        }

        @Test
        @TestMetadata("calllTypeArgumentsScript.kts")
        public void testCalllTypeArgumentsScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/calllTypeArgumentsScript.kts");
        }

        @Test
        @TestMetadata("compoundAssignOnVarScript.kts")
        public void testCompoundAssignOnVarScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/compoundAssignOnVarScript.kts");
        }

        @Test
        @TestMetadata("compoundAssignWithArrayAccessConventionScript.kts")
        public void testCompoundAssignWithArrayAccessConventionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/compoundAssignWithArrayAccessConventionScript.kts");
        }

        @Test
        @TestMetadata("compoundAssignWithArrayGetConventionScript.kts")
        public void testCompoundAssignWithArrayGetConventionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/compoundAssignWithArrayGetConventionScript.kts");
        }

        @Test
        @TestMetadata("constructorDelegationSuperCallScript.kts")
        public void testConstructorDelegationSuperCallScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/constructorDelegationSuperCallScript.kts");
        }

        @Test
        @TestMetadata("functionCallArgumentListScript.kts")
        public void testFunctionCallArgumentListScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/functionCallArgumentListScript.kts");
        }

        @Test
        @TestMetadata("invokeCallArgumentListScript.kts")
        public void testInvokeCallArgumentListScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/invokeCallArgumentListScript.kts");
        }

        @Test
        @TestMetadata("qualifiedCallInsideSuperCallScript.kts")
        public void testQualifiedCallInsideSuperCallScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/qualifiedCallInsideSuperCallScript.kts");
        }

        @Test
        @TestMetadata("setOperatorScript.kts")
        public void testSetOperatorScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/setOperatorScript.kts");
        }

        @Test
        @TestMetadata("superTypeScript.kts")
        public void testSuperTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/superTypeScript.kts");
        }

        @Test
        @TestMetadata("syntheticResultDeclaration.kts")
        public void testSyntheticResultDeclaration() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/calls/syntheticResultDeclaration.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/declarations")
    @TestDataPath("$PROJECT_ROOT")
    public class Declarations {
        @Test
        public void testAllFilesPresentInDeclarations() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/declarations"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("constructorParameterScript.kts")
        public void testConstructorParameterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/constructorParameterScript.kts");
        }

        @Test
        @TestMetadata("constructorPropertyScript.kts")
        public void testConstructorPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/constructorPropertyScript.kts");
        }

        @Test
        @TestMetadata("destructionWithNoRValueScript.kts")
        public void testDestructionWithNoRValueScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/destructionWithNoRValueScript.kts");
        }

        @Test
        @TestMetadata("destructuringEntryScript.kts")
        public void testDestructuringEntryScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/destructuringEntryScript.kts");
        }

        @Test
        @TestMetadata("destructuringScript.kts")
        public void testDestructuringScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/destructuringScript.kts");
        }

        @Test
        @TestMetadata("objectLiteralExpressionScript.kts")
        public void testObjectLiteralExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/objectLiteralExpressionScript.kts");
        }

        @Test
        @TestMetadata("objectLiteralScript.kts")
        public void testObjectLiteralScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/objectLiteralScript.kts");
        }

        @Test
        @TestMetadata("propertyDelegateScript.kts")
        public void testPropertyDelegateScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/propertyDelegateScript.kts");
        }

        @Test
        @TestMetadata("whereClause1Script.kts")
        public void testWhereClause1Script() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/whereClause1Script.kts");
        }

        @Test
        @TestMetadata("whereClause2Script.kts")
        public void testWhereClause2Script() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/declarations/whereClause2Script.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/destructuring")
    @TestDataPath("$PROJECT_ROOT")
    public class Destructuring {
        @Test
        public void testAllFilesPresentInDestructuring() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/destructuring"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/expressions")
    @TestDataPath("$PROJECT_ROOT")
    public class Expressions {
        @Test
        public void testAllFilesPresentInExpressions() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/expressions"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("arrayAccessExpressionScript.kts")
        public void testArrayAccessExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/arrayAccessExpressionScript.kts");
        }

        @Test
        @TestMetadata("arrayIndexExpressionWithIncScript.kts")
        public void testArrayIndexExpressionWithIncScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/arrayIndexExpressionWithIncScript.kts");
        }

        @Test
        @TestMetadata("assignment.kts")
        public void testAssignment() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/assignment.kts");
        }

        @Test
        @TestMetadata("binaryExpressionOperatorScript.kts")
        public void testBinaryExpressionOperatorScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/binaryExpressionOperatorScript.kts");
        }

        @Test
        @TestMetadata("binaryExpressionScript.kts")
        public void testBinaryExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/binaryExpressionScript.kts");
        }

        @Test
        @TestMetadata("blockExpressionScript.kts")
        public void testBlockExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/blockExpressionScript.kts");
        }

        @Test
        @TestMetadata("boolLiteralScript.kts")
        public void testBoolLiteralScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/boolLiteralScript.kts");
        }

        @Test
        @TestMetadata("callInsideFunction.kts")
        public void testCallInsideFunction() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/callInsideFunction.kts");
        }

        @Test
        @TestMetadata("callInsideStatement.kts")
        public void testCallInsideStatement() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/callInsideStatement.kts");
        }

        @Test
        @TestMetadata("forExpressionRangeScript.kts")
        public void testForExpressionRangeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/forExpressionRangeScript.kts");
        }

        @Test
        @TestMetadata("forExpressionScript.kts")
        public void testForExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/forExpressionScript.kts");
        }

        @Test
        @TestMetadata("forExpressionVariableScript.kts")
        public void testForExpressionVariableScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/forExpressionVariableScript.kts");
        }

        @Test
        @TestMetadata("ifExpressionScript.kts")
        public void testIfExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/ifExpressionScript.kts");
        }

        @Test
        @TestMetadata("incExpressionScript.kts")
        public void testIncExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/incExpressionScript.kts");
        }

        @Test
        @TestMetadata("insidePlusAssignTargetScript.kts")
        public void testInsidePlusAssignTargetScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/insidePlusAssignTargetScript.kts");
        }

        @Test
        @TestMetadata("intLiteralScript.kts")
        public void testIntLiteralScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/intLiteralScript.kts");
        }

        @Test
        @TestMetadata("isExpressionScript.kts")
        public void testIsExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/isExpressionScript.kts");
        }

        @Test
        @TestMetadata("objectLiteralExpressionScript.kts")
        public void testObjectLiteralExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/objectLiteralExpressionScript.kts");
        }

        @Test
        @TestMetadata("parenthesizedExpressionScript.kts")
        public void testParenthesizedExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/parenthesizedExpressionScript.kts");
        }

        @Test
        @TestMetadata("stringLiteralScript.kts")
        public void testStringLiteralScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/stringLiteralScript.kts");
        }

        @Test
        @TestMetadata("stringTemplateExpressionEntryScript.kts")
        public void testStringTemplateExpressionEntryScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/stringTemplateExpressionEntryScript.kts");
        }

        @Test
        @TestMetadata("throwExpressionScript.kts")
        public void testThrowExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/throwExpressionScript.kts");
        }

        @Test
        @TestMetadata("tryExpressionScript.kts")
        public void testTryExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/tryExpressionScript.kts");
        }

        @Test
        @TestMetadata("whenExpressionScript.kts")
        public void testWhenExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/whenExpressionScript.kts");
        }

        @Test
        @TestMetadata("whileExpressionScript.kts")
        public void testWhileExpressionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/whileExpressionScript.kts");
        }

        @Test
        @TestMetadata("wholeStringTemplateScript.kts")
        public void testWholeStringTemplateScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/expressions/wholeStringTemplateScript.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/inImport")
    @TestDataPath("$PROJECT_ROOT")
    public class InImport {
        @Test
        public void testAllFilesPresentInInImport() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/inImport"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("firstImportNamePartScript.kts")
        public void testFirstImportNamePartScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inImport/firstImportNamePartScript.kts");
        }

        @Test
        @TestMetadata("importListScript.kts")
        public void testImportListScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inImport/importListScript.kts");
        }

        @Test
        @TestMetadata("middleImportNamePartScript.kts")
        public void testMiddleImportNamePartScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inImport/middleImportNamePartScript.kts");
        }

        @Test
        @TestMetadata("qualifiedImportNamePartScript.kts")
        public void testQualifiedImportNamePartScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inImport/qualifiedImportNamePartScript.kts");
        }

        @Test
        @TestMetadata("wholeImportDirectiveScript.kts")
        public void testWholeImportDirectiveScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inImport/wholeImportDirectiveScript.kts");
        }

        @Test
        @TestMetadata("wholeImportNameScript.kts")
        public void testWholeImportNameScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inImport/wholeImportNameScript.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage")
    @TestDataPath("$PROJECT_ROOT")
    public class InPackage {
        @Test
        public void testAllFilesPresentInInPackage() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("firstPackageNamePartScript.kts")
        public void testFirstPackageNamePartScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage/firstPackageNamePartScript.kts");
        }

        @Test
        @TestMetadata("middlePackageNamePartScript.kts")
        public void testMiddlePackageNamePartScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage/middlePackageNamePartScript.kts");
        }

        @Test
        @TestMetadata("qualifiedPackageNamePartScript.kts")
        public void testQualifiedPackageNamePartScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage/qualifiedPackageNamePartScript.kts");
        }

        @Test
        @TestMetadata("wholePackageDirectiveScript.kts")
        public void testWholePackageDirectiveScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage/wholePackageDirectiveScript.kts");
        }

        @Test
        @TestMetadata("wholePackageNameScript.kts")
        public void testWholePackageNameScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/inPackage/wholePackageNameScript.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/invalidCode")
    @TestDataPath("$PROJECT_ROOT")
    public class InvalidCode {
        @Test
        public void testAllFilesPresentInInvalidCode() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/invalidCode"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/qualifiedExpressions")
    @TestDataPath("$PROJECT_ROOT")
    public class QualifiedExpressions {
        @Test
        public void testAllFilesPresentInQualifiedExpressions() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/qualifiedExpressions"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("firstPartOfQualifiedCallWithNestedClassesScript.kts")
        public void testFirstPartOfQualifiedCallWithNestedClassesScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/qualifiedExpressions/firstPartOfQualifiedCallWithNestedClassesScript.kts");
        }

        @Test
        @TestMetadata("qualifiedPartOfQualifiedCallUnresolvedScript.kts")
        public void testQualifiedPartOfQualifiedCallUnresolvedScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/qualifiedExpressions/qualifiedPartOfQualifiedCallUnresolvedScript.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/types")
    @TestDataPath("$PROJECT_ROOT")
    public class Types {
        @Test
        public void testAllFilesPresentInTypes() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/types"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("functionalTypeScript.kts")
        public void testFunctionalTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/types/functionalTypeScript.kts");
        }

        @Test
        @TestMetadata("nestedClassTypeScript.kts")
        public void testNestedClassTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/types/nestedClassTypeScript.kts");
        }

        @Test
        @TestMetadata("nullableTypeScript.kts")
        public void testNullableTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/types/nullableTypeScript.kts");
        }

        @Test
        @TestMetadata("receiverTypeScript.kts")
        public void testReceiverTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/types/receiverTypeScript.kts");
        }

        @Test
        @TestMetadata("wholeTypeScript.kts")
        public void testWholeTypeScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/types/wholeTypeScript.kts");
        }
    }

    @Nested
    @TestMetadata("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration")
    @TestDataPath("$PROJECT_ROOT")
    public class WholeDeclaration {
        @Test
        public void testAllFilesPresentInWholeDeclaration() throws Exception {
            KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration"), Pattern.compile("^(.+)\\.(kts)$"), null, true);
        }

        @Test
        @TestMetadata("assignmentStatement.kts")
        public void testAssignmentStatement() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/assignmentStatement.kts");
        }

        @Test
        @TestMetadata("class.kts")
        public void testClass() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/class.kts");
        }

        @Test
        @TestMetadata("classTypeParemeterScript.kts")
        public void testClassTypeParemeterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/classTypeParemeterScript.kts");
        }

        @Test
        @TestMetadata("enumEntryScript.kts")
        public void testEnumEntryScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/enumEntryScript.kts");
        }

        @Test
        @TestMetadata("function.kts")
        public void testFunction() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/function.kts");
        }

        @Test
        @TestMetadata("getterScript.kts")
        public void testGetterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/getterScript.kts");
        }

        @Test
        @TestMetadata("localClassScript.kts")
        public void testLocalClassScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/localClassScript.kts");
        }

        @Test
        @TestMetadata("localFunctionScript.kts")
        public void testLocalFunctionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/localFunctionScript.kts");
        }

        @Test
        @TestMetadata("localPropertyScript.kts")
        public void testLocalPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/localPropertyScript.kts");
        }

        @Test
        @TestMetadata("memberFunctionScript.kts")
        public void testMemberFunctionScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/memberFunctionScript.kts");
        }

        @Test
        @TestMetadata("memberPropertyScript.kts")
        public void testMemberPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/memberPropertyScript.kts");
        }

        @Test
        @TestMetadata("memberTypeAliasScript.kts")
        public void testMemberTypeAliasScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/memberTypeAliasScript.kts");
        }

        @Test
        @TestMetadata("nestedClassScript.kts")
        public void testNestedClassScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/nestedClassScript.kts");
        }

        @Test
        @TestMetadata("primaryConstructorValueParameterScript.kts")
        public void testPrimaryConstructorValueParameterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/primaryConstructorValueParameterScript.kts");
        }

        @Test
        @TestMetadata("scriptInitializer.kts")
        public void testScriptInitializer() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/scriptInitializer.kts");
        }

        @Test
        @TestMetadata("secondaryConstructorValueParameterScript.kts")
        public void testSecondaryConstructorValueParameterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/secondaryConstructorValueParameterScript.kts");
        }

        @Test
        @TestMetadata("setterScript.kts")
        public void testSetterScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/setterScript.kts");
        }

        @Test
        @TestMetadata("statement.kts")
        public void testStatement() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/statement.kts");
        }

        @Test
        @TestMetadata("topLevelPropertyScript.kts")
        public void testTopLevelPropertyScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/topLevelPropertyScript.kts");
        }

        @Test
        @TestMetadata("topLevelTypelTypeAliasScript.kts")
        public void testTopLevelTypelTypeAliasScript() throws Exception {
            runTest("analysis/low-level-api-fir/testData/getOrBuildFir/wholeDeclaration/topLevelTypelTypeAliasScript.kts");
        }
    }
}
