diff options
author | Marc R. Hoffmann <hoffmann@mountainminds.com> | 2010-12-10 12:52:22 +0000 |
---|---|---|
committer | Marc R. Hoffmann <hoffmann@mountainminds.com> | 2010-12-10 12:52:22 +0000 |
commit | 2afd611acff37b88fac79ee9b661a2246596b735 (patch) | |
tree | c4fa8f6b4fe845213bcd7b5e3fb0c2d9d3c371b9 /org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java | |
parent | 5ff6b2dc7a8a82132fbe3a65e4c86a60a0be8693 (diff) | |
download | jacoco-2afd611acff37b88fac79ee9b661a2246596b735.tar.gz |
SF #3110219: Provide proper error message in case of duplicate class names in the same group.
Diffstat (limited to 'org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java')
-rw-r--r-- | org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java b/org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java index 66521de8..b5ba833e 100644 --- a/org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java +++ b/org.jacoco.core/src/org/jacoco/core/analysis/CoverageBuilder.java @@ -40,7 +40,7 @@ public class CoverageBuilder implements IStructureVisitor { private final StringPool stringPool;
- private final Map<Long, ClassCoverage> classes;
+ private final Map<String, ClassCoverage> classes;
private final Map<String, SourceFileCoverage> sourcefiles;
@@ -66,7 +66,7 @@ public class CoverageBuilder implements IStructureVisitor { final StringPool stringPool) {
this.executionData = executionData;
this.stringPool = stringPool;
- this.classes = new HashMap<Long, ClassCoverage>();
+ this.classes = new HashMap<String, ClassCoverage>();
this.sourcefiles = new HashMap<String, SourceFileCoverage>();
}
@@ -136,7 +136,10 @@ public class CoverageBuilder implements IStructureVisitor { signature, superName, interfaces, sourcename, methods);
// Only consider classes that actually contain code:
if (classData.getInstructionCounter().getTotalCount() > 0) {
- classes.put(Long.valueOf(id), classData);
+ if (classes.put(name, classData) != null) {
+ throw new IllegalStateException(
+ "Duplicate class name in same group: " + name);
+ }
if (sourcename != null) {
final String packageName = stringPool.get(classData
.getPackageName());
|