/*
 * 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.js.test.fir;

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.GenerateJsTestsKt}. DO NOT MODIFY MANUALLY */
@SuppressWarnings("all")
@TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib")
@TestDataPath("$PROJECT_ROOT")
public class FirPsiJsOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiJsDiagnosticTest {
  @Test
  public void testAllFilesPresentInTestsWithJsStdLib() {
    KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
  }

  @Test
  @TestMetadata("candidateNotSuccessfulButNoContradiction.kt")
  public void testCandidateNotSuccessfulButNoContradiction() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/candidateNotSuccessfulButNoContradiction.kt");
  }

  @Test
  @TestMetadata("dynamicUnresolved.kt")
  public void testDynamicUnresolved() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicUnresolved.kt");
  }

  @Test
  @TestMetadata("excludedDefaultImports.kt")
  public void testExcludedDefaultImports() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/excludedDefaultImports.kt");
  }

  @Test
  @TestMetadata("externalFunctionsWithContextParameters.kt")
  public void testExternalFunctionsWithContextParameters() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/externalFunctionsWithContextParameters.kt");
  }

  @Test
  @TestMetadata("externalInterfaceClassLiteral.kt")
  public void testExternalInterfaceClassLiteral() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/externalInterfaceClassLiteral.kt");
  }

  @Test
  @TestMetadata("externalNestedTypealias.kt")
  public void testExternalNestedTypealias() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/externalNestedTypealias.kt");
  }

  @Test
  @TestMetadata("externalTypeInheritsExternalTypeViaTypeAlias.kt")
  public void testExternalTypeInheritsExternalTypeViaTypeAlias() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/externalTypeInheritsExternalTypeViaTypeAlias.kt");
  }

  @Test
  @TestMetadata("funConstructorCallJS.kt")
  public void testFunConstructorCallJS() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/funConstructorCallJS.kt");
  }

  @Test
  @TestMetadata("implementingFunction.kt")
  public void testImplementingFunction() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/implementingFunction.kt");
  }

  @Test
  @TestMetadata("inaccurateJsExportBehavior.kt")
  public void testInaccurateJsExportBehavior() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/inaccurateJsExportBehavior.kt");
  }

  @Test
  @TestMetadata("isInitializedInInline.kt")
  public void testIsInitializedInInline() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/isInitializedInInline.kt");
  }

  @Test
  @TestMetadata("jsExternalArgument.kt")
  public void testJsExternalArgument() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsExternalArgument.kt");
  }

  @Test
  @TestMetadata("jsExternalInheritorsOnly.kt")
  public void testJsExternalInheritorsOnly() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsExternalInheritorsOnly.kt");
  }

  @Test
  @TestMetadata("jsExternalSuperclassWithoutArguments.kt")
  public void testJsExternalSuperclassWithoutArguments() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsExternalSuperclassWithoutArguments.kt");
  }

  @Test
  @TestMetadata("jsImplicitBoxing.kt")
  public void testJsImplicitBoxing() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsImplicitBoxing.kt");
  }

  @Test
  @TestMetadata("jsStatic.kt")
  public void testJsStatic() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsStatic.kt");
  }

  @Test
  @TestMetadata("kt42271.kt")
  public void testKt42271() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/kt42271.kt");
  }

  @Test
  @TestMetadata("localClassMetadata.kt")
  public void testLocalClassMetadata() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/localClassMetadata.kt");
  }

  @Test
  @TestMetadata("moreThanOneOverriddenExternals.kt")
  public void testMoreThanOneOverriddenExternals() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/moreThanOneOverriddenExternals.kt");
  }

  @Test
  @TestMetadata("noImpl.kt")
  public void testNoImpl() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/noImpl.kt");
  }

  @Test
  @TestMetadata("platformDependent.kt")
  public void testPlatformDependent() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/platformDependent.kt");
  }

  @Test
  @TestMetadata("runtimeAnnotations.kt")
  public void testRuntimeAnnotations() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/runtimeAnnotations.kt");
  }

  @Test
  @TestMetadata("unsafeCastFunctionOnDynamicType.kt")
  public void testUnsafeCastFunctionOnDynamicType() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/unsafeCastFunctionOnDynamicType.kt");
  }

  @Test
  @TestMetadata("wrongMultipleInheritance.kt")
  public void testWrongMultipleInheritance() {
    runTest("compiler/testData/diagnostics/testsWithJsStdLib/wrongMultipleInheritance.kt");
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/classLiteral")
  @TestDataPath("$PROJECT_ROOT")
  public class ClassLiteral {
    @Test
    public void testAllFilesPresentInClassLiteral() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/classLiteral"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("arrays_after.kt")
    public void testArrays_after() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/classLiteral/arrays_after.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes")
  @TestDataPath("$PROJECT_ROOT")
  public class DynamicTypes {
    @Test
    public void testAllFilesPresentInDynamicTypes() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("allowedDynamicFunctionType.kt")
    public void testAllowedDynamicFunctionType() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/allowedDynamicFunctionType.kt");
    }

    @Test
    @TestMetadata("assignment.kt")
    public void testAssignment() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/assignment.kt");
    }

    @Test
    @TestMetadata("block.kt")
    public void testBlock() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/block.kt");
    }

    @Test
    @TestMetadata("callableReferences.kt")
    public void testCallableReferences() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/callableReferences.kt");
    }

    @Test
    @TestMetadata("capturedDynamic.kt")
    public void testCapturedDynamic() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/capturedDynamic.kt");
    }

    @Test
    @TestMetadata("capturedDynamicNI.kt")
    public void testCapturedDynamicNI() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/capturedDynamicNI.kt");
    }

    @Test
    @TestMetadata("classDelegateBy.kt")
    public void testClassDelegateBy() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/classDelegateBy.kt");
    }

    @Test
    @TestMetadata("comparisonToNull.kt")
    public void testComparisonToNull() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/comparisonToNull.kt");
    }

    @Test
    @TestMetadata("conditions.kt")
    public void testConditions() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/conditions.kt");
    }

    @Test
    @TestMetadata("conventions.kt")
    public void testConventions() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/conventions.kt");
    }

    @Test
    @TestMetadata("destructuring.kt")
    public void testDestructuring() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/destructuring.kt");
    }

    @Test
    @TestMetadata("dynamicCalls.kt")
    public void testDynamicCalls() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicCalls.kt");
    }

    @Test
    @TestMetadata("dynamicCallsWithLambdas.kt")
    public void testDynamicCallsWithLambdas() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicCallsWithLambdas.kt");
    }

    @Test
    @TestMetadata("dynamicCastTarget.kt")
    public void testDynamicCastTarget() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicCastTarget.kt");
    }

    @Test
    @TestMetadata("dynamicExtension.kt")
    public void testDynamicExtension() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicExtension.kt");
    }

    @Test
    @TestMetadata("dynamicExtensionCallableReference.kt")
    public void testDynamicExtensionCallableReference() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicExtensionCallableReference.kt");
    }

    @Test
    @TestMetadata("dynamicSafeCalls.kt")
    public void testDynamicSafeCalls() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicSafeCalls.kt");
    }

    @Test
    @TestMetadata("dynamicVsGeneric.kt")
    public void testDynamicVsGeneric() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/dynamicVsGeneric.kt");
    }

    @Test
    @TestMetadata("extensionVals.kt")
    public void testExtensionVals() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/extensionVals.kt");
    }

    @Test
    @TestMetadata("extensionVars.kt")
    public void testExtensionVars() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/extensionVars.kt");
    }

    @Test
    @TestMetadata("extensions.kt")
    public void testExtensions() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/extensions.kt");
    }

    @Test
    @TestMetadata("extensionsToDynamic.kt")
    public void testExtensionsToDynamic() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/extensionsToDynamic.kt");
    }

    @Test
    @TestMetadata("implicitDynamicReceiver.kt")
    public void testImplicitDynamicReceiver() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/implicitDynamicReceiver.kt");
    }

    @Test
    @TestMetadata("inExpression.kt")
    public void testInExpression() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/inExpression.kt");
    }

    @Test
    @TestMetadata("indexedAccess.kt")
    public void testIndexedAccess() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/indexedAccess.kt");
    }

    @Test
    @TestMetadata("inference.kt")
    public void testInference() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/inference.kt");
    }

    @Test
    @TestMetadata("jsonParseInsideIf.kt")
    public void testJsonParseInsideIf() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/jsonParseInsideIf.kt");
    }

    @Test
    @TestMetadata("kt57960.kt")
    public void testKt57960() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/kt57960.kt");
    }

    @Test
    @TestMetadata("membersOfAny.kt")
    public void testMembersOfAny() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/membersOfAny.kt");
    }

    @Test
    @TestMetadata("namedArguments.kt")
    public void testNamedArguments() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/namedArguments.kt");
    }

    @Test
    @TestMetadata("noUnsupportedInLocals.kt")
    public void testNoUnsupportedInLocals() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/noUnsupportedInLocals.kt");
    }

    @Test
    @TestMetadata("nullable.kt")
    public void testNullable() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/nullable.kt");
    }

    @Test
    @TestMetadata("objectAccessInLambdaWithDynamicReceiver.kt")
    public void testObjectAccessInLambdaWithDynamicReceiver() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/objectAccessInLambdaWithDynamicReceiver.kt");
    }

    @Test
    @TestMetadata("overloading.kt")
    public void testOverloading() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/overloading.kt");
    }

    @Test
    @TestMetadata("overloadingAmbiguity.kt")
    public void testOverloadingAmbiguity() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/overloadingAmbiguity.kt");
    }

    @Test
    @TestMetadata("overrides.kt")
    public void testOverrides() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/overrides.kt");
    }

    @Test
    @TestMetadata("propertyDelegateBy.kt")
    public void testPropertyDelegateBy() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/propertyDelegateBy.kt");
    }

    @Test
    @TestMetadata("protected.kt")
    public void testProtected() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/protected.kt");
    }

    @Test
    @TestMetadata("rangeExpression.kt")
    public void testRangeExpression() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/rangeExpression.kt");
    }

    @Test
    @TestMetadata("rangeUntilExpression.kt")
    public void testRangeUntilExpression() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/rangeUntilExpression.kt");
    }

    @Test
    @TestMetadata("reified.kt")
    public void testReified() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/reified.kt");
    }

    @Test
    @TestMetadata("setOperatorOnDynamic.kt")
    public void testSetOperatorOnDynamic() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/setOperatorOnDynamic.kt");
    }

    @Test
    @TestMetadata("smartCast.kt")
    public void testSmartCast() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/smartCast.kt");
    }

    @Test
    @TestMetadata("spreadOperator.kt")
    public void testSpreadOperator() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/spreadOperator.kt");
    }

    @Test
    @TestMetadata("staticCallsInDynamicContext.kt")
    public void testStaticCallsInDynamicContext() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/staticCallsInDynamicContext.kt");
    }

    @Test
    @TestMetadata("staticExtensions.kt")
    public void testStaticExtensions() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/staticExtensions.kt");
    }

    @Test
    @TestMetadata("substitution.kt")
    public void testSubstitution() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/substitution.kt");
    }

    @Test
    @TestMetadata("supertypesAndBounds.kt")
    public void testSupertypesAndBounds() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/supertypesAndBounds.kt");
    }

    @Test
    @TestMetadata("typealiasExpandingToDynamic.kt")
    public void testTypealiasExpandingToDynamic() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/typealiasExpandingToDynamic.kt");
    }

    @Test
    @TestMetadata("typealiasWithAnnotatedDynamic.kt")
    public void testTypealiasWithAnnotatedDynamic() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/typealiasWithAnnotatedDynamic.kt");
    }

    @Test
    @TestMetadata("typealiasWithAnnotatedDynamicInAbstractClass.kt")
    public void testTypealiasWithAnnotatedDynamicInAbstractClass() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/typealiasWithAnnotatedDynamicInAbstractClass.kt");
    }

    @Test
    @TestMetadata("typealiasWithDynamic.kt")
    public void testTypealiasWithDynamic() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/typealiasWithDynamic.kt");
    }

    @Test
    @TestMetadata("varargs.kt")
    public void testVarargs() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/dynamicTypes/varargs.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/export")
  @TestDataPath("$PROJECT_ROOT")
  public class Export {
    @Test
    public void testAllFilesPresentInExport() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/export"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("contextParameters.kt")
    public void testContextParameters() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/contextParameters.kt");
    }

    @Test
    @TestMetadata("expectActualExports.kt")
    public void testExpectActualExports() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/expectActualExports.kt");
    }

    @Test
    @TestMetadata("extendingNonExportedType.kt")
    public void testExtendingNonExportedType() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/extendingNonExportedType.kt");
    }

    @Test
    @TestMetadata("genericClassWithInner.kt")
    public void testGenericClassWithInner() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/genericClassWithInner.kt");
    }

    @Test
    @TestMetadata("jsExportOnNestedDeclarations.kt")
    public void testJsExportOnNestedDeclarations() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/jsExportOnNestedDeclarations.kt");
    }

    @Test
    @TestMetadata("nestedTypealias.kt")
    public void testNestedTypealias() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/nestedTypealias.kt");
    }

    @Test
    @TestMetadata("nonConsumableIdentifiers.kt")
    public void testNonConsumableIdentifiers() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/nonConsumableIdentifiers.kt");
    }

    @Test
    @TestMetadata("nonConsumableIdentifiersInExportedFile.kt")
    public void testNonConsumableIdentifiersInExportedFile() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/nonConsumableIdentifiersInExportedFile.kt");
    }

    @Test
    @TestMetadata("primitiveNullableTypes.kt")
    public void testPrimitiveNullableTypes() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/primitiveNullableTypes.kt");
    }

    @Test
    @TestMetadata("promiseUnit.kt")
    public void testPromiseUnit() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/promiseUnit.kt");
    }

    @Test
    @TestMetadata("secondaryConstructorWithoutJsName.kt")
    public void testSecondaryConstructorWithoutJsName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/secondaryConstructorWithoutJsName.kt");
    }

    @Test
    @TestMetadata("secondaryConstructorWithoutJsNameInExportedFile.kt")
    public void testSecondaryConstructorWithoutJsNameInExportedFile() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/secondaryConstructorWithoutJsNameInExportedFile.kt");
    }

    @Test
    @TestMetadata("typeAliasInValueParameter.kt")
    public void testTypeAliasInValueParameter() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/typeAliasInValueParameter.kt");
    }

    @Test
    @TestMetadata("unexportableTypesInSignature.kt")
    public void testUnexportableTypesInSignature() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/unexportableTypesInSignature.kt");
    }

    @Test
    @TestMetadata("unexportableTypesInTypeParameters.kt")
    public void testUnexportableTypesInTypeParameters() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/unexportableTypesInTypeParameters.kt");
    }

    @Test
    @TestMetadata("wrongExportedDeclaration.kt")
    public void testWrongExportedDeclaration() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/wrongExportedDeclaration.kt");
    }

    @Test
    @TestMetadata("wrongExportedDeclarationInExportedFile.kt")
    public void testWrongExportedDeclarationInExportedFile() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/wrongExportedDeclarationInExportedFile.kt");
    }

    @Test
    @TestMetadata("wrongExportedDeclarationInExportedFileWhenIgnored.kt")
    public void testWrongExportedDeclarationInExportedFileWhenIgnored() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/export/wrongExportedDeclarationInExportedFileWhenIgnored.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/inline")
  @TestDataPath("$PROJECT_ROOT")
  public class Inline {
    @Test
    public void testAllFilesPresentInInline() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/inline"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("Reified.kt")
    public void testReified() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/inline/Reified.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/jsCode")
  @TestDataPath("$PROJECT_ROOT")
  public class JsCode {
    @Test
    public void testAllFilesPresentInJsCode() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/jsCode"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("compileTimeStringWithTopLevelVal.kt")
    public void testCompileTimeStringWithTopLevelVal() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsCode/compileTimeStringWithTopLevelVal.kt");
    }

    @Test
    @TestMetadata("nestedTypealias.kt")
    public void testNestedTypealias() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/jsCode/nestedTypealias.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/jvmDeclarations")
  @TestDataPath("$PROJECT_ROOT")
  public class JvmDeclarations {
    @Test
    public void testAllFilesPresentInJvmDeclarations() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/jvmDeclarations"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("cloneable.kt")
    public void testCloneable() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/jvmDeclarations/cloneable.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/module")
  @TestDataPath("$PROJECT_ROOT")
  public class Module {
    @Test
    public void testAllFilesPresentInModule() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/module"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("contextParameters.kt")
    public void testContextParameters() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/contextParameters.kt");
    }

    @Test
    @TestMetadata("dualModuleFromUmd.kt")
    public void testDualModuleFromUmd() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/dualModuleFromUmd.kt");
    }

    @Test
    @TestMetadata("incompleteReifiedArg.kt")
    public void testIncompleteReifiedArg() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/incompleteReifiedArg.kt");
    }

    @Test
    @TestMetadata("jsModuleNonExternal.kt")
    public void testJsModuleNonExternal() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/jsModuleNonExternal.kt");
    }

    @Test
    @TestMetadata("jsModuleWithoutParameters.kt")
    public void testJsModuleWithoutParameters() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/jsModuleWithoutParameters.kt");
    }

    @Test
    @TestMetadata("jsVarProhibited.kt")
    public void testJsVarProhibited() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/jsVarProhibited.kt");
    }

    @Test
    @TestMetadata("nestedProhibited.kt")
    public void testNestedProhibited() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/nestedProhibited.kt");
    }

    @Test
    @TestMetadata("prohibitedOnNonNative.kt")
    public void testProhibitedOnNonNative() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/prohibitedOnNonNative.kt");
    }

    @Test
    @TestMetadata("typealias.kt")
    public void testTypealias() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/typealias.kt");
    }

    @Test
    @TestMetadata("wrongCallToModule.kt")
    public void testWrongCallToModule() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/wrongCallToModule.kt");
    }

    @Test
    @TestMetadata("wrongCallToNonModule.kt")
    public void testWrongCallToNonModule() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/module/wrongCallToNonModule.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/mpp")
  @TestDataPath("$PROJECT_ROOT")
  public class Mpp {
    @Test
    @TestMetadata("actualExternalInJs.kt")
    public void testActualExternalInJs() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/mpp/actualExternalInJs.kt");
    }

    @Test
    public void testAllFilesPresentInMpp() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/mpp"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("expectShouldBeJSExportable.kt")
    public void testExpectShouldBeJSExportable() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/mpp/expectShouldBeJSExportable.kt");
    }

    @Test
    @TestMetadata("expectsWithJsExport.kt")
    public void testExpectsWithJsExport() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/mpp/expectsWithJsExport.kt");
    }

    @Test
    @TestMetadata("JsExternalTypeExtendsActualExternalType.kt")
    public void testJsExternalTypeExtendsActualExternalType() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/mpp/JsExternalTypeExtendsActualExternalType.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/name")
  @TestDataPath("$PROJECT_ROOT")
  public class Name {
    @Test
    public void testAllFilesPresentInName() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/name"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("bridgeClash.kt")
    public void testBridgeClash() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/bridgeClash.kt");
    }

    @Test
    @TestMetadata("builtinClash.kt")
    public void testBuiltinClash() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/builtinClash.kt");
    }

    @Test
    @TestMetadata("classAndFunction.kt")
    public void testClassAndFunction() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/classAndFunction.kt");
    }

    @Test
    @TestMetadata("classAndTypealias.kt")
    public void testClassAndTypealias() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/classAndTypealias.kt");
    }

    @Test
    @TestMetadata("classInheritance.kt")
    public void testClassInheritance() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/classInheritance.kt");
    }

    @Test
    @TestMetadata("classInheritanceExtensions.kt")
    public void testClassInheritanceExtensions() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/classInheritanceExtensions.kt");
    }

    @Test
    @TestMetadata("classLevelMethodAndProperty.kt")
    public void testClassLevelMethodAndProperty() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/classLevelMethodAndProperty.kt");
    }

    @Test
    @TestMetadata("classMembers.kt")
    public void testClassMembers() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/classMembers.kt");
    }

    @Test
    @TestMetadata("companionInheritsOwnerClass.kt")
    public void testCompanionInheritsOwnerClass() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/companionInheritsOwnerClass.kt");
    }

    @Test
    @TestMetadata("conflictingNamesFromSuperclass.kt")
    public void testConflictingNamesFromSuperclass() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/conflictingNamesFromSuperclass.kt");
    }

    @Test
    @TestMetadata("constructorsWithSameJsName.kt")
    public void testConstructorsWithSameJsName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/constructorsWithSameJsName.kt");
    }

    @Test
    @TestMetadata("declarationClash.kt")
    public void testDeclarationClash() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/declarationClash.kt");
    }

    @Test
    @TestMetadata("extensionPropertyAndMethod.kt")
    public void testExtensionPropertyAndMethod() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/extensionPropertyAndMethod.kt");
    }

    @Test
    @TestMetadata("extensionPropertyAndMethodWithJsName.kt")
    public void testExtensionPropertyAndMethodWithJsName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/extensionPropertyAndMethodWithJsName.kt");
    }

    @Test
    @TestMetadata("externalClassInheritance.kt")
    public void testExternalClassInheritance() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/externalClassInheritance.kt");
    }

    @Test
    @TestMetadata("illegalName.kt")
    public void testIllegalName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/illegalName.kt");
    }

    @Test
    @TestMetadata("illegalNameIR.kt")
    public void testIllegalNameIR() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/illegalNameIR.kt");
    }

    @Test
    @TestMetadata("illegalPackageName.kt")
    public void testIllegalPackageName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/illegalPackageName.kt");
    }

    @Test
    @TestMetadata("IntersectionInheritance.kt")
    public void testIntersectionInheritance() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/IntersectionInheritance.kt");
    }

    @Test
    @TestMetadata("jsNameAndOverridden.kt")
    public void testJsNameAndOverridden() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameAndOverridden.kt");
    }

    @Test
    @TestMetadata("jsNameClash.kt")
    public void testJsNameClash() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameClash.kt");
    }

    @Test
    @TestMetadata("jsNameClashWithDefault.kt")
    public void testJsNameClashWithDefault() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameClashWithDefault.kt");
    }

    @Test
    @TestMetadata("jsNameMissingOnAccessors.kt")
    public void testJsNameMissingOnAccessors() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameMissingOnAccessors.kt");
    }

    @Test
    @TestMetadata("jsNameOnAccessors.kt")
    public void testJsNameOnAccessors() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameOnAccessors.kt");
    }

    @Test
    @TestMetadata("jsNameOnOverride.kt")
    public void testJsNameOnOverride() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameOnOverride.kt");
    }

    @Test
    @TestMetadata("jsNameOnPropertyAndAccessor.kt")
    public void testJsNameOnPropertyAndAccessor() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameOnPropertyAndAccessor.kt");
    }

    @Test
    @TestMetadata("jsNamePrihibitedOnPrimaryConstructor.kt")
    public void testJsNamePrihibitedOnPrimaryConstructor() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNamePrihibitedOnPrimaryConstructor.kt");
    }

    @Test
    @TestMetadata("jsNameProhibitedOnExtensionProperty.kt")
    public void testJsNameProhibitedOnExtensionProperty() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameProhibitedOnExtensionProperty.kt");
    }

    @Test
    @TestMetadata("jsNameUseTargetOnProperty.kt")
    public void testJsNameUseTargetOnProperty() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameUseTargetOnProperty.kt");
    }

    @Test
    @TestMetadata("jsNameWithoutParameter.kt")
    public void testJsNameWithoutParameter() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/jsNameWithoutParameter.kt");
    }

    @Test
    @TestMetadata("legalPackageName.kt")
    public void testLegalPackageName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/legalPackageName.kt");
    }

    @Test
    @TestMetadata("methodAndMethod.kt")
    public void testMethodAndMethod() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/methodAndMethod.kt");
    }

    @Test
    @TestMetadata("nameSwapInOverride.kt")
    public void testNameSwapInOverride() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/nameSwapInOverride.kt");
    }

    @Test
    @TestMetadata("nonASCIIName.kt")
    public void testNonASCIIName() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/nonASCIIName.kt");
    }

    @Test
    @TestMetadata("overrideOverloadedNativeFunction.kt")
    public void testOverrideOverloadedNativeFunction() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/overrideOverloadedNativeFunction.kt");
    }

    @Test
    @TestMetadata("packageAndMethod.kt")
    public void testPackageAndMethod() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/packageAndMethod.kt");
    }

    @Test
    @TestMetadata("packageAndProperty.kt")
    public void testPackageAndProperty() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/packageAndProperty.kt");
    }

    @Test
    @TestMetadata("privateJsNameClash.kt")
    public void testPrivateJsNameClash() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/privateJsNameClash.kt");
    }

    @Test
    @TestMetadata("propertyAndMethodInImplementor.kt")
    public void testPropertyAndMethodInImplementor() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/propertyAndMethodInImplementor.kt");
    }

    @Test
    @TestMetadata("propertyAndMethodInSubclass.kt")
    public void testPropertyAndMethodInSubclass() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/propertyAndMethodInSubclass.kt");
    }

    @Test
    @TestMetadata("suspendFun.kt")
    public void testSuspendFun() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/suspendFun.kt");
    }

    @Test
    @TestMetadata("topLevelDeclarations.kt")
    public void testTopLevelDeclarations() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/topLevelDeclarations.kt");
    }

    @Test
    @TestMetadata("topLevelMethodAndJsNameConstructor.kt")
    public void testTopLevelMethodAndJsNameConstructor() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/topLevelMethodAndJsNameConstructor.kt");
    }

    @Test
    @TestMetadata("topLevelMethodAndProperty.kt")
    public void testTopLevelMethodAndProperty() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/topLevelMethodAndProperty.kt");
    }

    @Test
    @TestMetadata("withContextParameters.kt")
    public void testWithContextParameters() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/name/withContextParameters.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native")
  @TestDataPath("$PROJECT_ROOT")
  public class Native {
    @Test
    public void testAllFilesPresentInNative() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("anonymousInitializer.kt")
    public void testAnonymousInitializer() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/anonymousInitializer.kt");
    }

    @Test
    @TestMetadata("body.kt")
    public void testBody() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/body.kt");
    }

    @Test
    @TestMetadata("delegatedConstructorCall.kt")
    public void testDelegatedConstructorCall() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/delegatedConstructorCall.kt");
    }

    @Test
    @TestMetadata("delegation.kt")
    public void testDelegation() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/delegation.kt");
    }

    @Test
    @TestMetadata("enumEntry.kt")
    public void testEnumEntry() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/enumEntry.kt");
    }

    @Test
    @TestMetadata("extensionFunctionAndProperty.kt")
    public void testExtensionFunctionAndProperty() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/extensionFunctionAndProperty.kt");
    }

    @Test
    @TestMetadata("extensionFunctionArgumentOrReturnType.kt")
    public void testExtensionFunctionArgumentOrReturnType() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/extensionFunctionArgumentOrReturnType.kt");
    }

    @Test
    @TestMetadata("externalFunInterface.kt")
    public void testExternalFunInterface() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/externalFunInterface.kt");
    }

    @Test
    @TestMetadata("externalInterfaceNested.kt")
    public void testExternalInterfaceNested() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/externalInterfaceNested.kt");
    }

    @Test
    @TestMetadata("inheritance.kt")
    public void testInheritance() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inheritance.kt");
    }

    @Test
    @TestMetadata("inline.kt")
    public void testInline() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inline.kt");
    }

    @Test
    @TestMetadata("inlineClass.kt")
    public void testInlineClass() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineClass.kt");
    }

    @Test
    @TestMetadata("inlineClassAsParameterOrReturnTypeWhenPropertyParametersAllowed.kt.kt")
    public void testInlineClassAsParameterOrReturnTypeWhenPropertyParametersAllowed_kt() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineClassAsParameterOrReturnTypeWhenPropertyParametersAllowed.kt.kt");
    }

    @Test
    @TestMetadata("inlineClassAsParameterOrReturnTypeWithPropertyParameters_allowed.kt.kt")
    public void testInlineClassAsParameterOrReturnTypeWithPropertyParameters_allowed_kt() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineClassAsParameterOrReturnTypeWithPropertyParameters_allowed.kt.kt");
    }

    @Test
    @TestMetadata("inlineClassAsParameterOrReturnType_allowed.kt.kt")
    public void testInlineClassAsParameterOrReturnType_allowed_kt() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineClassAsParameterOrReturnType_allowed.kt.kt");
    }

    @Test
    @TestMetadata("inlineClassAsParameterOrReturnType.kt.kt")
    public void testInlineClassAsParameterOrReturnType_kt() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineClassAsParameterOrReturnType.kt.kt");
    }

    @Test
    @TestMetadata("inlineClassWithAllowedPropertyParameter.kt")
    public void testInlineClassWithAllowedPropertyParameter() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineClassWithAllowedPropertyParameter.kt");
    }

    @Test
    @TestMetadata("inlineExtensionToNative.kt")
    public void testInlineExtensionToNative() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/inlineExtensionToNative.kt");
    }

    @Test
    @TestMetadata("innerClass.kt")
    public void testInnerClass() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/innerClass.kt");
    }

    @Test
    @TestMetadata("nested.kt")
    public void testNested() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nested.kt");
    }

    @Test
    @TestMetadata("nonAbstractMembersOfInterface.kt")
    public void testNonAbstractMembersOfInterface() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nonAbstractMembersOfInterface.kt");
    }

    @Test
    @TestMetadata("overrideOptionalParam.kt")
    public void testOverrideOptionalParam() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/overrideOptionalParam.kt");
    }

    @Test
    @TestMetadata("privateMembers.kt")
    public void testPrivateMembers() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/privateMembers.kt");
    }

    @Test
    @TestMetadata("propertyParameter.kt")
    public void testPropertyParameter() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/propertyParameter.kt");
    }

    @Test
    @TestMetadata("propertyParameterWhenItsAllowed.kt")
    public void testPropertyParameterWhenItsAllowed() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/propertyParameterWhenItsAllowed.kt");
    }

    @Test
    @TestMetadata("wrongTarget.kt")
    public void testWrongTarget() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/wrongTarget.kt");
    }

    @Nested
    @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter")
    @TestDataPath("$PROJECT_ROOT")
    public class NativeGetter {
      @Test
      public void testAllFilesPresentInNativeGetter() {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
      }

      @Test
      @TestMetadata("onLocalExtensionFun.kt")
      public void testOnLocalExtensionFun() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onLocalExtensionFun.kt");
      }

      @Test
      @TestMetadata("onLocalNonNativeClassMembers.kt")
      public void testOnLocalNonNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onLocalNonNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onLocalOtherDeclarations.kt")
      public void testOnLocalOtherDeclarations() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onLocalOtherDeclarations.kt");
      }

      @Test
      @TestMetadata("onNativeClassMembers.kt")
      public void testOnNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onNestedDeclarationsInsideNativeClass.kt")
      public void testOnNestedDeclarationsInsideNativeClass() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onNestedDeclarationsInsideNativeClass.kt");
      }

      @Test
      @TestMetadata("onNestedDeclarationsInsideNonNativeClass.kt")
      public void testOnNestedDeclarationsInsideNonNativeClass() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onNestedDeclarationsInsideNonNativeClass.kt");
      }

      @Test
      @TestMetadata("onNonNativeClassMembers.kt")
      public void testOnNonNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onNonNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onToplevelExtensionFun.kt")
      public void testOnToplevelExtensionFun() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onToplevelExtensionFun.kt");
      }

      @Test
      @TestMetadata("onToplevelOtherDeclarations.kt")
      public void testOnToplevelOtherDeclarations() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeGetter/onToplevelOtherDeclarations.kt");
      }
    }

    @Nested
    @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke")
    @TestDataPath("$PROJECT_ROOT")
    public class NativeInvoke {
      @Test
      public void testAllFilesPresentInNativeInvoke() {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
      }

      @Test
      @TestMetadata("onLocalExtensionFun.kt")
      public void testOnLocalExtensionFun() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onLocalExtensionFun.kt");
      }

      @Test
      @TestMetadata("onLocalNonNativeClassMembers.kt")
      public void testOnLocalNonNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onLocalNonNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onLocalOtherDeclarations.kt")
      public void testOnLocalOtherDeclarations() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onLocalOtherDeclarations.kt");
      }

      @Test
      @TestMetadata("onNativeClassMembers.kt")
      public void testOnNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onNestedDeclarationsInsideNativeClass.kt")
      public void testOnNestedDeclarationsInsideNativeClass() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onNestedDeclarationsInsideNativeClass.kt");
      }

      @Test
      @TestMetadata("onNestedDeclarationsInsideNonNativeClass.kt")
      public void testOnNestedDeclarationsInsideNonNativeClass() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onNestedDeclarationsInsideNonNativeClass.kt");
      }

      @Test
      @TestMetadata("onNonNativeClassMembers.kt")
      public void testOnNonNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onNonNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onToplevelExtensionFun.kt")
      public void testOnToplevelExtensionFun() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onToplevelExtensionFun.kt");
      }

      @Test
      @TestMetadata("onToplevelOtherDeclarations.kt")
      public void testOnToplevelOtherDeclarations() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeInvoke/onToplevelOtherDeclarations.kt");
      }
    }

    @Nested
    @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter")
    @TestDataPath("$PROJECT_ROOT")
    public class NativeSetter {
      @Test
      public void testAllFilesPresentInNativeSetter() {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
      }

      @Test
      @TestMetadata("onLocalExtensionFun.kt")
      public void testOnLocalExtensionFun() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onLocalExtensionFun.kt");
      }

      @Test
      @TestMetadata("onLocalNonNativeClassMembers.kt")
      public void testOnLocalNonNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onLocalNonNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onLocalOtherDeclarations.kt")
      public void testOnLocalOtherDeclarations() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onLocalOtherDeclarations.kt");
      }

      @Test
      @TestMetadata("onNativeClassMembers.kt")
      public void testOnNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onNestedDeclarationsInsideNativeClass.kt")
      public void testOnNestedDeclarationsInsideNativeClass() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onNestedDeclarationsInsideNativeClass.kt");
      }

      @Test
      @TestMetadata("onNestedDeclarationsInsideNonNativeClass.kt")
      public void testOnNestedDeclarationsInsideNonNativeClass() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onNestedDeclarationsInsideNonNativeClass.kt");
      }

      @Test
      @TestMetadata("onNonNativeClassMembers.kt")
      public void testOnNonNativeClassMembers() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onNonNativeClassMembers.kt");
      }

      @Test
      @TestMetadata("onToplevelExtensionFun.kt")
      public void testOnToplevelExtensionFun() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onToplevelExtensionFun.kt");
      }

      @Test
      @TestMetadata("onToplevelOtherDeclarations.kt")
      public void testOnToplevelOtherDeclarations() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/nativeSetter/onToplevelOtherDeclarations.kt");
      }
    }

    @Nested
    @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native/optionlBody")
    @TestDataPath("$PROJECT_ROOT")
    public class OptionlBody {
      @Test
      public void testAllFilesPresentInOptionlBody() {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native/optionlBody"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
      }

      @Test
      @TestMetadata("native.kt")
      public void testNative() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/optionlBody/native.kt");
      }

      @Test
      @TestMetadata("nativeGetter.kt")
      public void testNativeGetter() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/optionlBody/nativeGetter.kt");
      }

      @Test
      @TestMetadata("nativeInvoke.kt")
      public void testNativeInvoke() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/optionlBody/nativeInvoke.kt");
      }

      @Test
      @TestMetadata("nativeSetter.kt")
      public void testNativeSetter() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/optionlBody/nativeSetter.kt");
      }
    }

    @Nested
    @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti")
    @TestDataPath("$PROJECT_ROOT")
    public class Rtti {
      @Test
      public void testAllFilesPresentInRtti() {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
      }

      @Test
      @TestMetadata("castToNativeInterface.kt")
      public void testCastToNativeInterface() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti/castToNativeInterface.kt");
      }

      @Test
      @TestMetadata("checkForNativeInterface.kt")
      public void testCheckForNativeInterface() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti/checkForNativeInterface.kt");
      }

      @Test
      @TestMetadata("nativeInterfaceAsReifiedTypeArgument.kt")
      public void testNativeInterfaceAsReifiedTypeArgument() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti/nativeInterfaceAsReifiedTypeArgument.kt");
      }

      @Test
      @TestMetadata("nativeInterfaceClassLiteral.kt")
      public void testNativeInterfaceClassLiteral() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti/nativeInterfaceClassLiteral.kt");
      }

      @Test
      @TestMetadata("whenIsNativeInterface.kt")
      public void testWhenIsNativeInterface() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/rtti/whenIsNativeInterface.kt");
      }
    }

    @Nested
    @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/native/unusedParam")
    @TestDataPath("$PROJECT_ROOT")
    public class UnusedParam {
      @Test
      public void testAllFilesPresentInUnusedParam() {
        KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/native/unusedParam"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
      }

      @Test
      @TestMetadata("native.kt")
      public void testNative() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/unusedParam/native.kt");
      }

      @Test
      @TestMetadata("nativeGetter.kt")
      public void testNativeGetter() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/unusedParam/nativeGetter.kt");
      }

      @Test
      @TestMetadata("nativeInvoke.kt")
      public void testNativeInvoke() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/unusedParam/nativeInvoke.kt");
      }

      @Test
      @TestMetadata("nativeSetter.kt")
      public void testNativeSetter() {
        runTest("compiler/testData/diagnostics/testsWithJsStdLib/native/unusedParam/nativeSetter.kt");
      }
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/qualifier")
  @TestDataPath("$PROJECT_ROOT")
  public class Qualifier {
    @Test
    public void testAllFilesPresentInQualifier() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/qualifier"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("jsQualifierNonExternal.kt")
    public void testJsQualifierNonExternal() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/qualifier/jsQualifierNonExternal.kt");
    }

    @Test
    @TestMetadata("wrongQualifier.kt")
    public void testWrongQualifier() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/qualifier/wrongQualifier.kt");
    }
  }

  @Nested
  @TestMetadata("compiler/testData/diagnostics/testsWithJsStdLib/reflection")
  @TestDataPath("$PROJECT_ROOT")
  public class Reflection {
    @Test
    public void testAllFilesPresentInReflection() {
      KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/diagnostics/testsWithJsStdLib/reflection"), Pattern.compile("^([^_](.+))\\.kt$"), Pattern.compile("^(.+)\\.fir\\.kts?$"), TargetBackend.JS_IR, true);
    }

    @Test
    @TestMetadata("reflectionApi.kt")
    public void testReflectionApi() {
      runTest("compiler/testData/diagnostics/testsWithJsStdLib/reflection/reflectionApi.kt");
    }
  }
}
