/*
 * Copyright 2010-2015 JetBrains s.r.o.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.jetbrains.kotlin.idea.completion.test.handlers;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.test.JUnit3RunnerWithInners;
import org.jetbrains.kotlin.test.JetTestUtils;
import org.jetbrains.kotlin.test.TestMetadata;
import org.junit.runner.RunWith;

import java.io.File;
import java.util.regex.Pattern;

/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */
@SuppressWarnings("all")
@TestMetadata("idea/idea-completion/testData/handlers/basic")
@TestDataPath("$PROJECT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
public class BasicCompletionHandlerTestGenerated extends AbstractBasicCompletionHandlerTest {
    public void testAllFilesPresentInBasic() throws Exception {
        JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/idea-completion/testData/handlers/basic"), Pattern.compile("^(.+)\\.kt$"), true);
    }

    @TestMetadata("ClassWithClassObject.kt")
    public void testClassWithClassObject() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/ClassWithClassObject.kt");
        doTest(fileName);
    }

    @TestMetadata("DoNotUseParenthesisOnNextLine.kt")
    public void testDoNotUseParenthesisOnNextLine() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/DoNotUseParenthesisOnNextLine.kt");
        doTest(fileName);
    }

    @TestMetadata("ExtensionReceiverTypeArg.kt")
    public void testExtensionReceiverTypeArg() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/ExtensionReceiverTypeArg.kt");
        doTest(fileName);
    }

    @TestMetadata("GenericFunctionWithTab.kt")
    public void testGenericFunctionWithTab() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/GenericFunctionWithTab.kt");
        doTest(fileName);
    }

    @TestMetadata("GenericFunctionWithTab2.kt")
    public void testGenericFunctionWithTab2() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/GenericFunctionWithTab2.kt");
        doTest(fileName);
    }

    @TestMetadata("InterfaceNameBeforeRunBug.kt")
    public void testInterfaceNameBeforeRunBug() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/InterfaceNameBeforeRunBug.kt");
        doTest(fileName);
    }

    @TestMetadata("NestedTypeArg.kt")
    public void testNestedTypeArg() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/NestedTypeArg.kt");
        doTest(fileName);
    }

    @TestMetadata("PlatformStaticInClass.kt")
    public void testPlatformStaticInClass() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/PlatformStaticInClass.kt");
        doTest(fileName);
    }

    @TestMetadata("PlatformStaticInCompanionObject.kt")
    public void testPlatformStaticInCompanionObject() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/PlatformStaticInCompanionObject.kt");
        doTest(fileName);
    }

    @TestMetadata("ReplaceFunctionCallByProperty.kt")
    public void testReplaceFunctionCallByProperty() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/ReplaceFunctionCallByProperty.kt");
        doTest(fileName);
    }

    @TestMetadata("ReplaceFunctionCallByPropertyArgs.kt")
    public void testReplaceFunctionCallByPropertyArgs() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/ReplaceFunctionCallByPropertyArgs.kt");
        doTest(fileName);
    }

    @TestMetadata("SecondTypeArg.kt")
    public void testSecondTypeArg() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/SecondTypeArg.kt");
        doTest(fileName);
    }

    @TestMetadata("SpaceAfterParenthesisBug.kt")
    public void testSpaceAfterParenthesisBug() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/SpaceAfterParenthesisBug.kt");
        doTest(fileName);
    }

    @TestMetadata("SuperTypeArg.kt")
    public void testSuperTypeArg() throws Exception {
        String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/SuperTypeArg.kt");
        doTest(fileName);
    }

    @TestMetadata("idea/idea-completion/testData/handlers/basic/exclChar")
    @TestDataPath("$PROJECT_ROOT")
    @RunWith(JUnit3RunnerWithInners.class)
    public static class ExclChar extends AbstractBasicCompletionHandlerTest {
        @TestMetadata("1.kt")
        public void test1() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/exclChar/1.kt");
            doTest(fileName);
        }

        @TestMetadata("2.kt")
        public void test2() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/exclChar/2.kt");
            doTest(fileName);
        }

        @TestMetadata("3.kt")
        public void test3() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/exclChar/3.kt");
            doTest(fileName);
        }

        @TestMetadata("4.kt")
        public void test4() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/exclChar/4.kt");
            doTest(fileName);
        }

        @TestMetadata("5.kt")
        public void test5() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/exclChar/5.kt");
            doTest(fileName);
        }

        public void testAllFilesPresentInExclChar() throws Exception {
            JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/idea-completion/testData/handlers/basic/exclChar"), Pattern.compile("^(.+)\\.kt$"), true);
        }
    }

    @TestMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions")
    @TestDataPath("$PROJECT_ROOT")
    @RunWith(JUnit3RunnerWithInners.class)
    public static class HighOrderFunctions extends AbstractBasicCompletionHandlerTest {
        public void testAllFilesPresentInHighOrderFunctions() throws Exception {
            JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/idea-completion/testData/handlers/basic/highOrderFunctions"), Pattern.compile("^(.+)\\.kt$"), true);
        }

        @TestMetadata("ForceParenthesisForTabChar.kt")
        public void testForceParenthesisForTabChar() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/ForceParenthesisForTabChar.kt");
            doTest(fileName);
        }

        @TestMetadata("FunctionLiteralInsertOnSpace.kt")
        public void testFunctionLiteralInsertOnSpace() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/FunctionLiteralInsertOnSpace.kt");
            doTest(fileName);
        }

        @TestMetadata("FunctionLiteralInsertWhenNoSpacesForBraces.kt")
        public void testFunctionLiteralInsertWhenNoSpacesForBraces() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/FunctionLiteralInsertWhenNoSpacesForBraces.kt");
            doTest(fileName);
        }

        @TestMetadata("HigherOrderFunction.kt")
        public void testHigherOrderFunction() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/HigherOrderFunction.kt");
            doTest(fileName);
        }

        @TestMetadata("HigherOrderFunctionWithArg.kt")
        public void testHigherOrderFunctionWithArg() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/HigherOrderFunctionWithArg.kt");
            doTest(fileName);
        }

        @TestMetadata("HigherOrderFunctionWithArgs1.kt")
        public void testHigherOrderFunctionWithArgs1() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/HigherOrderFunctionWithArgs1.kt");
            doTest(fileName);
        }

        @TestMetadata("HigherOrderFunctionWithArgs2.kt")
        public void testHigherOrderFunctionWithArgs2() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/HigherOrderFunctionWithArgs2.kt");
            doTest(fileName);
        }

        @TestMetadata("HigherOrderFunctionWithArgs3.kt")
        public void testHigherOrderFunctionWithArgs3() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/HigherOrderFunctionWithArgs3.kt");
            doTest(fileName);
        }

        @TestMetadata("InsertFunctionWithSingleParameterWithBrace.kt")
        public void testInsertFunctionWithSingleParameterWithBrace() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/InsertFunctionWithSingleParameterWithBrace.kt");
            doTest(fileName);
        }

        @TestMetadata("ParameterTypeIsDerivedFromFunction.kt")
        public void testParameterTypeIsDerivedFromFunction() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/ParameterTypeIsDerivedFromFunction.kt");
            doTest(fileName);
        }

        @TestMetadata("ReplaceByLambdaTemplateNoClosingParenth.kt")
        public void testReplaceByLambdaTemplateNoClosingParenth() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/ReplaceByLambdaTemplateNoClosingParenth.kt");
            doTest(fileName);
        }

        @TestMetadata("WithArgsEmptyLambdaAfter.kt")
        public void testWithArgsEmptyLambdaAfter() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/WithArgsEmptyLambdaAfter.kt");
            doTest(fileName);
        }

        @TestMetadata("WithArgsNonEmptyLambdaAfter.kt")
        public void testWithArgsNonEmptyLambdaAfter() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/highOrderFunctions/WithArgsNonEmptyLambdaAfter.kt");
            doTest(fileName);
        }
    }

    @TestMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType")
    @TestDataPath("$PROJECT_ROOT")
    @RunWith(JUnit3RunnerWithInners.class)
    public static class ParameterNameAndType extends AbstractBasicCompletionHandlerTest {
        public void testAllFilesPresentInParameterNameAndType() throws Exception {
            JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/idea-completion/testData/handlers/basic/parameterNameAndType"), Pattern.compile("^(.+)\\.kt$"), true);
        }

        @TestMetadata("CodeStyleSettings.kt")
        public void testCodeStyleSettings() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/CodeStyleSettings.kt");
            doTest(fileName);
        }

        @TestMetadata("Comma.kt")
        public void testComma() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/Comma.kt");
            doTest(fileName);
        }

        @TestMetadata("InsertImport.kt")
        public void testInsertImport() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/InsertImport.kt");
            doTest(fileName);
        }

        @TestMetadata("NoInsertionOnTypingColon.kt")
        public void testNoInsertionOnTypingColon() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/NoInsertionOnTypingColon.kt");
            doTest(fileName);
        }

        @TestMetadata("NoInsertionOnTypingSpace.kt")
        public void testNoInsertionOnTypingSpace() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/NoInsertionOnTypingSpace.kt");
            doTest(fileName);
        }

        @TestMetadata("ParameterInFile.kt")
        public void testParameterInFile() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/ParameterInFile.kt");
            doTest(fileName);
        }

        @TestMetadata("ParameterInFile2.kt")
        public void testParameterInFile2() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/ParameterInFile2.kt");
            doTest(fileName);
        }

        @TestMetadata("Simple.kt")
        public void testSimple() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/Simple.kt");
            doTest(fileName);
        }

        @TestMetadata("UserPrefix.kt")
        public void testUserPrefix() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/parameterNameAndType/UserPrefix.kt");
            doTest(fileName);
        }
    }

    @TestMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate")
    @TestDataPath("$PROJECT_ROOT")
    @RunWith(JUnit3RunnerWithInners.class)
    public static class StringTemplate extends AbstractBasicCompletionHandlerTest {
        @TestMetadata("1.kt")
        public void test1() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/1.kt");
            doTest(fileName);
        }

        @TestMetadata("2.kt")
        public void test2() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/2.kt");
            doTest(fileName);
        }

        @TestMetadata("3.kt")
        public void test3() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/3.kt");
            doTest(fileName);
        }

        @TestMetadata("4.kt")
        public void test4() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/4.kt");
            doTest(fileName);
        }

        public void testAllFilesPresentInStringTemplate() throws Exception {
            JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/idea-completion/testData/handlers/basic/stringTemplate"), Pattern.compile("^(.+)\\.kt$"), true);
        }

        @TestMetadata("BackingField.kt")
        public void testBackingField() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/BackingField.kt");
            doTest(fileName);
        }

        @TestMetadata("NotEmptyPrefix.kt")
        public void testNotEmptyPrefix() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/NotEmptyPrefix.kt");
            doTest(fileName);
        }

        @TestMetadata("Replace.kt")
        public void testReplace() throws Exception {
            String fileName = JetTestUtils.navigationMetadata("idea/idea-completion/testData/handlers/basic/stringTemplate/Replace.kt");
            doTest(fileName);
        }
    }
}
