test frameworks: provide tested class name (${CLASS_NAME}) for generation templates (IDEA-124845)

This commit is contained in:
Anna Kozlova
2015-03-16 18:30:30 +01:00
parent f7406747c6
commit 4b9f128fd7
5 changed files with 23 additions and 0 deletions
@@ -442,6 +442,10 @@ public class CreateTestDialog extends DialogWrapper {
return myTargetClassNameField.getText();
}
public PsiClass getTargetClass() {
return myTargetClass;
}
@Nullable
public String getSuperClassName() {
String result = mySuperClassField.getText().trim();
@@ -126,6 +126,10 @@ public class JavaTestGenerator implements TestGenerator {
final Properties defaultProperties = FileTemplateManager.getInstance(targetDirectory.getProject()).getDefaultProperties();
Properties properties = new Properties(defaultProperties);
properties.setProperty(FileTemplate.ATTRIBUTE_NAME, d.getClassName());
final PsiClass targetClass = d.getTargetClass();
if (targetClass != null && targetClass.isValid()) {
properties.setProperty(FileTemplate.ATTRIBUTE_CLASS_NAME, targetClass.getQualifiedName());
}
try {
final PsiElement psiElement = FileTemplateUtil.createFromTemplate(fileTemplate, templateName, properties, targetDirectory);
if (psiElement instanceof PsiClass) {
@@ -16,6 +16,11 @@
<td width="10">&nbsp;</td>
<td valign="top"><font face="verdana" size="-1">name of the created class.</font></td>
</tr>
<tr>
<td valign="top"><nobr><font face="verdana" size="-2" color="#f45252"><b>${CLASS_NAME}</b></font></nobr></td>
<td width="10">&nbsp;</td>
<td valign="top"><font face="verdana" size="-1">name of the tested class.</font></td>
</tr>
<tr>
<td valign="top"><nobr><font face="verdana" size="-2" color="#f45252"><b>${BODY}</b></font></nobr></td>
<td width="10">&nbsp;</td>
@@ -16,6 +16,11 @@
<td width="10">&nbsp;</td>
<td valign="top"><font face="verdana" size="-1">name of the created class.</font></td>
</tr>
<tr>
<td valign="top"><nobr><font face="verdana" size="-2" color="#f45252"><b>${CLASS_NAME}</b></font></nobr></td>
<td width="10">&nbsp;</td>
<td valign="top"><font face="verdana" size="-1">name of the tested class.</font></td>
</tr>
<tr>
<td valign="top"><nobr><font face="verdana" size="-2" color="#f45252"><b>${BODY}</b></font></nobr></td>
<td width="10">&nbsp;</td>
@@ -16,6 +16,11 @@
<td width="10">&nbsp;</td>
<td valign="top"><font face="verdana" size="-1">name of the created class.</font></td>
</tr>
<tr>
<td valign="top"><nobr><font face="verdana" size="-2" color="#f45252"><b>${CLASS_NAME}</b></font></nobr></td>
<td width="10">&nbsp;</td>
<td valign="top"><font face="verdana" size="-1">name of the tested class.</font></td>
</tr>
<tr>
<td valign="top"><nobr><font face="verdana" size="-2" color="#f45252"><b>${BODY}</b></font></nobr></td>
<td width="10">&nbsp;</td>