diff --git a/plugins/coverage/coverage_rt/src/listeners/CoverageListener.java b/plugins/coverage/coverage_rt/src/listeners/CoverageListener.java index 5942c30e356d..f7f808aa485d 100644 --- a/plugins/coverage/coverage_rt/src/listeners/CoverageListener.java +++ b/plugins/coverage/coverage_rt/src/listeners/CoverageListener.java @@ -11,7 +11,7 @@ public abstract class CoverageListener { final char ch = fileName.charAt(i); if (ch > 0 && ch < 255) { - if (Character.isLetterOrDigit(ch)) { + if (Character.isJavaIdentifierPart(ch) || ch == ' ' || ch == '@' || ch == '-') { result.append(ch); } else { diff --git a/plugins/coverage/src/com/intellij/coverage/JavaCoverageEngine.java b/plugins/coverage/src/com/intellij/coverage/JavaCoverageEngine.java index b04f2c3bdbcb..aaa285281450 100644 --- a/plugins/coverage/src/com/intellij/coverage/JavaCoverageEngine.java +++ b/plugins/coverage/src/com/intellij/coverage/JavaCoverageEngine.java @@ -501,7 +501,7 @@ public class JavaCoverageEngine extends CoverageEngine { } else { String className = testName; while (lastIdx > 0) { - className = className.substring(0, lastIdx - 1); + className = className.substring(0, lastIdx); psiClass = facade.findClass(StringUtil.getPackageName(className, '_').replaceAll("\\_", "\\."), projectScope); lastIdx = className.lastIndexOf("_"); if (psiClass != null) {