From 8da8ca06caab01e5c96b8b4575d15cd362d02f60 Mon Sep 17 00:00:00 2001 From: peter Date: Thu, 31 Jan 2013 17:31:38 +0100 Subject: [PATCH] EA-43312 - NPE: ClassUtil.getJVMClassName --- .../openapi/src/com/intellij/execution/JavaExecutionUtil.java | 2 +- java/java-psi-api/src/com/intellij/psi/util/ClassUtil.java | 2 +- .../testng/src/com/theoryinpractice/testng/model/TestData.java | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/java/execution/openapi/src/com/intellij/execution/JavaExecutionUtil.java b/java/execution/openapi/src/com/intellij/execution/JavaExecutionUtil.java index 52a705e3841f..801740dec5f7 100644 --- a/java/execution/openapi/src/com/intellij/execution/JavaExecutionUtil.java +++ b/java/execution/openapi/src/com/intellij/execution/JavaExecutionUtil.java @@ -106,7 +106,7 @@ public class JavaExecutionUtil { } @Nullable - public static String getRuntimeQualifiedName(final PsiClass aClass) { + public static String getRuntimeQualifiedName(@NotNull final PsiClass aClass) { return ClassUtil.getJVMClassName(aClass); } diff --git a/java/java-psi-api/src/com/intellij/psi/util/ClassUtil.java b/java/java-psi-api/src/com/intellij/psi/util/ClassUtil.java index d7f8aa2a27c2..158e7dd81a16 100644 --- a/java/java-psi-api/src/com/intellij/psi/util/ClassUtil.java +++ b/java/java-psi-api/src/com/intellij/psi/util/ClassUtil.java @@ -244,7 +244,7 @@ public class ClassUtil { } @Nullable - public static String getJVMClassName(PsiClass aClass) { + public static String getJVMClassName(@NotNull PsiClass aClass) { final PsiClass containingClass = aClass.getContainingClass(); if (containingClass != null) { String parentName = getJVMClassName(containingClass); diff --git a/plugins/testng/src/com/theoryinpractice/testng/model/TestData.java b/plugins/testng/src/com/theoryinpractice/testng/model/TestData.java index 9a50e135ac70..2f857253b86a 100644 --- a/plugins/testng/src/com/theoryinpractice/testng/model/TestData.java +++ b/plugins/testng/src/com/theoryinpractice/testng/model/TestData.java @@ -239,7 +239,8 @@ public class TestData implements Cloneable element = PsiTreeUtil.getParentOfType(element, PsiModifierListOwner.class, false); if (element instanceof PsiMethod && TEST_OBJECT.equals(TestType.METHOD.getType())) { final PsiClass aClass = ((PsiMethod) element).getContainingClass(); - return Comparing.strEqual(MAIN_CLASS_NAME, JavaExecutionUtil.getRuntimeQualifiedName(aClass)) && + return aClass != null && + Comparing.strEqual(MAIN_CLASS_NAME, JavaExecutionUtil.getRuntimeQualifiedName(aClass)) && Comparing.strEqual(METHOD_NAME, ((PsiMethod) element).getName()); } else if (element instanceof PsiClass && TEST_OBJECT.equals(TestType.CLASS.getType())) { return Comparing.strEqual(MAIN_CLASS_NAME, JavaExecutionUtil.getRuntimeQualifiedName((PsiClass) element));