1 package org.hansel.probes; 2 3 import org.hansel.Probe; 4 import org.hansel.ProbeData; 5 import org.objectweb.asm.MethodVisitor; 6 import org.objectweb.asm.Opcodes; 7 8 12 public class MethodProbe extends Probe { 13 14 15 private boolean covered; 16 17 21 public MethodProbe(ProbeData pd) { 22 super(pd); 23 this.covered = false; 24 } 25 26 public boolean displayFailure() { 27 return coverageFailure(); 28 } 29 30 public boolean coverageFailure() { 31 return !covered; 32 } 33 34 public String getFailureMessage() { 35 return "Method not covered."; 36 } 37 38 public void insertProbeCode(MethodVisitor cv) { 39 cv.visitLdcInsn(new Integer (getID())); 40 cv.visitMethodInsn(Opcodes.INVOKESTATIC, HIT_CLASS, "hitMethod", "(I)V"); 41 } 42 43 47 public void hit() { 48 this.covered = true; 49 } 50 } 51 | Popular Tags |