aboutsummaryrefslogtreecommitdiff
path: root/org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java')
-rw-r--r--org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java44
1 files changed, 44 insertions, 0 deletions
diff --git a/org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java b/org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java
index d4e39997..9c8e6df8 100644
--- a/org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java
+++ b/org.jacoco.core.test/src/org/jacoco/core/internal/analysis/ClassAnalyzerTest.java
@@ -87,4 +87,48 @@ public class ClassAnalyzerTest {
assertEquals(1, coverage.getMethods().size());
}
+ @Test
+ public void testMethodFilter_EnumValues() {
+ analyzer.visit(Opcodes.V1_5, Opcodes.ACC_PUBLIC, "Foo", null,
+ "java/lang/Enum", null);
+ final MethodProbesVisitor mv = analyzer.visitMethod(0, "values",
+ "()[LFoo;", null, null);
+ assertNull(mv);
+ assertTrue(coverage.getMethods().isEmpty());
+ }
+
+ @Test
+ public void testMethodFilter_EnumNonValues() {
+ analyzer.visit(Opcodes.V1_5, Opcodes.ACC_PUBLIC, "Foo", null,
+ "java/lang/Enum", null);
+ final MethodProbesVisitor mv = analyzer.visitMethod(0, "values", "()V",
+ null, null);
+ mv.visitCode();
+ mv.visitInsn(Opcodes.RETURN);
+ mv.visitEnd();
+ assertEquals(1, coverage.getMethods().size());
+ }
+
+ @Test
+ public void testMethodFilter_EnumValueOf() {
+ analyzer.visit(Opcodes.V1_5, Opcodes.ACC_PUBLIC, "Foo", null,
+ "java/lang/Enum", null);
+ final MethodProbesVisitor mv = analyzer.visitMethod(0, "valueOf",
+ "(Ljava/lang/String;)LFoo;", null, null);
+ assertNull(mv);
+ assertTrue(coverage.getMethods().isEmpty());
+ }
+
+ @Test
+ public void testMethodFilter_EnumNonValueOf() {
+ analyzer.visit(Opcodes.V1_5, Opcodes.ACC_PUBLIC, "Foo", null,
+ "java/lang/Enum", null);
+ final MethodProbesVisitor mv = analyzer.visitMethod(0, "valueOf", "()V",
+ null, null);
+ mv.visitCode();
+ mv.visitInsn(Opcodes.RETURN);
+ mv.visitEnd();
+ assertEquals(1, coverage.getMethods().size());
+ }
+
}