Auto generate reference tests

This commit is contained in:
Nikolay Krasko
2013-07-11 16:14:45 +04:00
parent cb19450d8d
commit 2621df3243
10 changed files with 86 additions and 34 deletions
@@ -49,6 +49,7 @@ import org.jetbrains.jet.plugin.quickfix.AbstractQuickFixMultiFileTest;
import org.jetbrains.jet.plugin.quickfix.AbstractQuickFixTest;
import org.jetbrains.jet.plugin.refactoring.inline.AbstractInlineTest;
import org.jetbrains.jet.psi.AbstractJetPsiMatcherTest;
import org.jetbrains.jet.resolve.AbstractResolveBaseTest;
import org.jetbrains.jet.resolve.AbstractResolveTest;
import org.jetbrains.jet.safeDelete.AbstractJetSafeDeleteTest;
import org.jetbrains.jet.test.generator.SimpleTestClassModel;
@@ -416,6 +417,13 @@ public class GenerateTests {
// TODO fix -- disabled because doesn't work in Idea 130.1335
// testModel("idea/testData/safeDelete/deleteJavaMethod", "doJavaMethodTest")
);
generateTest(
"idea/tests/",
"ReferenceResolveTestGenerated",
AbstractResolveBaseTest.class,
testModel("idea/testData/resolve/references", "doTest")
);
}
private static SimpleTestClassModel testModel(@NotNull String rootPath) {
@@ -32,47 +32,17 @@ import org.jetbrains.jet.InTextDirectivesUtils;
import org.jetbrains.jet.plugin.PluginTestCaseBase;
import org.jetbrains.jet.testing.ReferenceUtils;
import java.io.File;
import java.util.List;
public class ResolveBaseTest extends LightCodeInsightTestCase {
public abstract class AbstractResolveBaseTest extends LightCodeInsightTestCase {
@Override
protected void setUp() throws Exception {
super.setUp();
((StartupManagerImpl) StartupManager.getInstance(getProject())).runPostStartupActivities();
}
public void testCtrlClickResolve() throws Exception {
doTest();
}
public void testResolveClass() throws Exception {
doTest();
}
public void testResolvePackageInProperty() throws Exception {
doTest();
}
public void testSamConstructor() throws Exception {
doTest();
}
public void testSamConstructorTypeArguments() throws Exception {
doTest();
}
public void testSamAdapter() throws Exception {
doTest();
}
public void testSeveralOverrides() throws Exception {
doTest();
}
protected void doTest() {
String testName = getTestName(false);
configureByFile(testName + ".kt");
protected void doTest(String path) {
configureByFile(path);
if (InTextDirectivesUtils.isDirectiveDefined(getFile().getText(), "MULTIRESOLVE")) {
doMultiResolveTest();
@@ -139,6 +109,6 @@ public class ResolveBaseTest extends LightCodeInsightTestCase {
@NotNull
@Override
protected String getTestDataPath() {
return new File(PluginTestCaseBase.getTestDataPathBase(), "/resolve/").getPath() + File.separator;
return "./";
}
}
@@ -0,0 +1,74 @@
/*
* 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.resolve;
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.resolve.AbstractResolveBaseTest;
/** This class is generated by {@link org.jetbrains.jet.generators.tests.GenerateTests}. DO NOT MODIFY MANUALLY */
@SuppressWarnings("all")
@TestMetadata("idea/testData/resolve/references")
public class ReferenceResolveTestGenerated extends AbstractResolveBaseTest {
public void testAllFilesPresentInReferences() throws Exception {
JetTestUtils.assertAllTestsPresentByMetadata(this.getClass(), "org.jetbrains.jet.generators.tests.GenerateTests", new File("idea/testData/resolve/references"), Pattern.compile("^(.+)\\.kt$"), true);
}
@TestMetadata("CtrlClickResolve.kt")
public void testCtrlClickResolve() throws Exception {
doTest("idea/testData/resolve/references/CtrlClickResolve.kt");
}
@TestMetadata("ResolveClass.kt")
public void testResolveClass() throws Exception {
doTest("idea/testData/resolve/references/ResolveClass.kt");
}
@TestMetadata("ResolvePackageInProperty.kt")
public void testResolvePackageInProperty() throws Exception {
doTest("idea/testData/resolve/references/ResolvePackageInProperty.kt");
}
@TestMetadata("SamAdapter.kt")
public void testSamAdapter() throws Exception {
doTest("idea/testData/resolve/references/SamAdapter.kt");
}
@TestMetadata("SamConstructor.kt")
public void testSamConstructor() throws Exception {
doTest("idea/testData/resolve/references/SamConstructor.kt");
}
@TestMetadata("SamConstructorTypeArguments.kt")
public void testSamConstructorTypeArguments() throws Exception {
doTest("idea/testData/resolve/references/SamConstructorTypeArguments.kt");
}
@TestMetadata("SeveralOverrides.kt")
public void testSeveralOverrides() throws Exception {
doTest("idea/testData/resolve/references/SeveralOverrides.kt");
}
}