diff --git a/generators/org/jetbrains/jet/generators/tests/GenerateTests.java b/generators/org/jetbrains/jet/generators/tests/GenerateTests.java index df6bab4f763..46b67625f8a 100644 --- a/generators/org/jetbrains/jet/generators/tests/GenerateTests.java +++ b/generators/org/jetbrains/jet/generators/tests/GenerateTests.java @@ -19,6 +19,7 @@ package org.jetbrains.jet.generators.tests; import junit.framework.TestCase; import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.checkers.AbstractDiagnosticsTestWithEagerResolve; +import org.jetbrains.jet.checkers.AbstractJetJsCheckerTest; import org.jetbrains.jet.checkers.AbstractJetPsiCheckerTest; import org.jetbrains.jet.codegen.AbstractBytecodeTextTest; import org.jetbrains.jet.codegen.AbstractCheckLocalVariablesTableTest; @@ -207,6 +208,13 @@ public class GenerateTests { testModel("idea/testData/checker/infos", false, "kt", "doTestWithInfos") ); + generateTest( + "idea/tests/", + "JetJsCheckerTestGenerated", + AbstractJetJsCheckerTest.class, + testModel("idea/testData/checker/js", false, "kt", "doTest") + ); + generateTest( "idea/tests/", "QuickFixTestGenerated", diff --git a/idea/testData/checker/js/basic.kt b/idea/testData/checker/js/basic.kt new file mode 100644 index 00000000000..a7a0a149d8b --- /dev/null +++ b/idea/testData/checker/js/basic.kt @@ -0,0 +1,2 @@ +fun test() { +} \ No newline at end of file diff --git a/idea/testData/checker/js/helloWorld.kt b/idea/testData/checker/js/helloWorld.kt new file mode 100644 index 00000000000..8b2aefabcca --- /dev/null +++ b/idea/testData/checker/js/helloWorld.kt @@ -0,0 +1,3 @@ +fun main(args: Array) { + println("Hello World") +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/jet/checkers/AbstractJetJsCheckerTest.java b/idea/tests/org/jetbrains/jet/checkers/AbstractJetJsCheckerTest.java new file mode 100644 index 00000000000..64170e95e81 --- /dev/null +++ b/idea/tests/org/jetbrains/jet/checkers/AbstractJetJsCheckerTest.java @@ -0,0 +1,35 @@ +/* + * Copyright 2010-2013 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.jet.checkers; + +import com.intellij.testFramework.LightProjectDescriptor; +import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.jet.plugin.JetStdJSProjectDescriptor; + +public abstract class AbstractJetJsCheckerTest extends LightCodeInsightFixtureTestCase { + @NotNull + @Override + protected LightProjectDescriptor getProjectDescriptor() { + return JetStdJSProjectDescriptor.INSTANCE; + } + + public void doTest(String filePath) { + myFixture.configureByFile(filePath); + myFixture.checkHighlighting(); + } +} diff --git a/idea/tests/org/jetbrains/jet/checkers/JetJsCheckerTestGenerated.java b/idea/tests/org/jetbrains/jet/checkers/JetJsCheckerTestGenerated.java new file mode 100644 index 00000000000..da47784a501 --- /dev/null +++ b/idea/tests/org/jetbrains/jet/checkers/JetJsCheckerTestGenerated.java @@ -0,0 +1,49 @@ +/* + * Copyright 2010-2013 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.jet.checkers; + +import junit.framework.Assert; +import junit.framework.Test; +import junit.framework.TestSuite; + +import java.io.File; +import java.util.regex.Pattern; +import org.jetbrains.jet.JetTestUtils; +import org.jetbrains.jet.test.InnerTestClasses; +import org.jetbrains.jet.test.TestMetadata; + +import org.jetbrains.jet.checkers.AbstractJetJsCheckerTest; + +/** This class is generated by {@link org.jetbrains.jet.generators.tests.GenerateTests}. DO NOT MODIFY MANUALLY */ +@SuppressWarnings("all") +@TestMetadata("idea/testData/checker/js") +public class JetJsCheckerTestGenerated extends AbstractJetJsCheckerTest { + public void testAllFilesPresentInJs() throws Exception { + JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), "org.jetbrains.jet.generators.tests.GenerateTests", new File("idea/testData/checker/js"), Pattern.compile("^(.+)\\.kt$"), false); + } + + @TestMetadata("basic.kt") + public void testBasic() throws Exception { + doTest("idea/testData/checker/js/basic.kt"); + } + + @TestMetadata("helloWorld.kt") + public void testHelloWorld() throws Exception { + doTest("idea/testData/checker/js/helloWorld.kt"); + } + +}