From fb7ddf8340add671ce59557766fc82f7b7c291e9 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Wed, 16 May 2012 21:01:46 +0400 Subject: [PATCH] init field in setup: use setup method template(IDEA-86135) --- .../com/intellij/testIntegration/JavaTestFramework.java | 8 ++++++++ .../groovy/testIntegration/GroovyTestFramework.java | 2 +- .../src/com/intellij/execution/junit/JUnit3Framework.java | 2 +- .../src/com/intellij/execution/junit/JUnit4Framework.java | 2 +- .../src/com/theoryinpractice/testng/TestNGFramework.java | 2 +- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/java/java-impl/src/com/intellij/testIntegration/JavaTestFramework.java b/java/java-impl/src/com/intellij/testIntegration/JavaTestFramework.java index d365a9606bdd..edca7bc98350 100644 --- a/java/java-impl/src/com/intellij/testIntegration/JavaTestFramework.java +++ b/java/java-impl/src/com/intellij/testIntegration/JavaTestFramework.java @@ -15,11 +15,14 @@ */ package com.intellij.testIntegration; +import com.intellij.ide.fileTemplates.FileTemplate; import com.intellij.ide.fileTemplates.FileTemplateDescriptor; +import com.intellij.ide.fileTemplates.FileTemplateManager; import com.intellij.lang.Language; import com.intellij.lang.java.JavaLanguage; import com.intellij.openapi.module.Module; import com.intellij.openapi.roots.ProjectRootManager; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; import com.intellij.psi.search.GlobalSearchScope; @@ -104,4 +107,9 @@ public abstract class JavaTestFramework implements TestFramework { public FileTemplateDescriptor getParametersMethodFileTemplateDescriptor() { return null; } + + protected PsiMethod createSetUpPatternMethod(JVMElementFactory factory) { + final FileTemplate template = FileTemplateManager.getInstance().getCodeTemplate(getSetUpMethodFileTemplateDescriptor().getFileName()); + return factory.createMethodFromText(StringUtil.replace(template.getText(), "${BODY}", ""), null); + } } diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/testIntegration/GroovyTestFramework.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/testIntegration/GroovyTestFramework.java index fa272db569c3..b5a68c42c824 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/testIntegration/GroovyTestFramework.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/testIntegration/GroovyTestFramework.java @@ -75,7 +75,7 @@ public class GroovyTestFramework extends JavaTestFramework { LOG.assertTrue(clazz.getLanguage() == GroovyFileType.GROOVY_LANGUAGE); final GroovyPsiElementFactory factory = GroovyPsiElementFactory.getInstance(clazz.getProject()); - final PsiMethod patternMethod = factory.createMethodFromText("protected void setUp() {\nsuper.setUp()\n}", null); + final PsiMethod patternMethod = createSetUpPatternMethod(factory); final PsiClass baseClass = clazz.getSuperClass(); if (baseClass != null) { diff --git a/plugins/junit/src/com/intellij/execution/junit/JUnit3Framework.java b/plugins/junit/src/com/intellij/execution/junit/JUnit3Framework.java index 7e13eb250966..78fbd9a4cdd2 100644 --- a/plugins/junit/src/com/intellij/execution/junit/JUnit3Framework.java +++ b/plugins/junit/src/com/intellij/execution/junit/JUnit3Framework.java @@ -80,7 +80,7 @@ public class JUnit3Framework extends JavaTestFramework { final PsiManager manager = clazz.getManager(); final PsiElementFactory factory = JavaPsiFacade.getInstance(manager.getProject()).getElementFactory(); - final PsiMethod patternMethod = factory.createMethodFromText("protected void setUp() throws Exception {\nsuper.setUp();\n}", null); + final PsiMethod patternMethod = createSetUpPatternMethod(factory); final PsiClass baseClass = clazz.getSuperClass(); if (baseClass != null) { diff --git a/plugins/junit/src/com/intellij/execution/junit/JUnit4Framework.java b/plugins/junit/src/com/intellij/execution/junit/JUnit4Framework.java index 178f47994ea8..1ee4683dee6d 100644 --- a/plugins/junit/src/com/intellij/execution/junit/JUnit4Framework.java +++ b/plugins/junit/src/com/intellij/execution/junit/JUnit4Framework.java @@ -92,7 +92,7 @@ public class JUnit4Framework extends JavaTestFramework { PsiManager manager = clazz.getManager(); PsiElementFactory factory = JavaPsiFacade.getInstance(manager.getProject()).getElementFactory(); - method = factory.createMethodFromText("@org.junit.Before public void setUp() throws Exception {\n}", null); + method = createSetUpPatternMethod(factory); PsiMethod existingMethod = clazz.findMethodBySignature(method, false); if (existingMethod != null) { int exit = ApplicationManager.getApplication().isUnitTestMode() ? diff --git a/plugins/testng/src/com/theoryinpractice/testng/TestNGFramework.java b/plugins/testng/src/com/theoryinpractice/testng/TestNGFramework.java index a69c5f28f85a..03350176c776 100644 --- a/plugins/testng/src/com/theoryinpractice/testng/TestNGFramework.java +++ b/plugins/testng/src/com/theoryinpractice/testng/TestNGFramework.java @@ -99,7 +99,7 @@ public class TestNGFramework extends JavaTestFramework { final PsiManager manager = clazz.getManager(); final PsiElementFactory factory = JavaPsiFacade.getInstance(manager.getProject()).getElementFactory(); String setUpName = "setUp"; - PsiMethod patternMethod = factory.createMethodFromText("@" + BeforeMethod.class.getName() + "\n protected void " + setUpName + "() throws Exception {}", null); + PsiMethod patternMethod = createSetUpPatternMethod(factory); PsiMethod inClass = clazz.findMethodBySignature(patternMethod, false); if (inClass != null) { int exit = ApplicationManager.getApplication().isUnitTestMode() ?