View Javadoc
1 package test.net.sourceforge.pmd; 2 3 import junit.framework.TestCase; 4 import net.sourceforge.pmd.Rule; 5 import net.sourceforge.pmd.RuleContext; 6 import net.sourceforge.pmd.RuleViolation; 7 8 public class RuleViolationTest extends TestCase { 9 10 public void testConstructor1() { 11 Rule rule = new MockRule("name", "desc", "msg"); 12 RuleContext ctx = new RuleContext(); 13 ctx.setSourceCodeFilename("filename"); 14 RuleViolation r = new RuleViolation(rule, 2, ctx); 15 assertEquals("object mismatch", rule, r.getRule()); 16 assertEquals("line number is wrong", 2, r.getLine()); 17 assertEquals("filename is wrong", "filename", r.getFilename()); 18 } 19 20 public void testConstructor2() { 21 Rule rule = new MockRule("name", "desc", "msg"); 22 RuleContext ctx = new RuleContext(); 23 ctx.setSourceCodeFilename("filename"); 24 RuleViolation r = new RuleViolation(rule, 2, "description", ctx); 25 assertEquals("object mismatch", rule, r.getRule()); 26 assertEquals("line number is wrong", 2, r.getLine()); 27 assertEquals("filename is wrong", "filename", r.getFilename()); 28 assertEquals("description is wrong", "description", r.getDescription()); 29 } 30 31 public void testComparatorWithDifferentFilenames() { 32 Rule rule = new MockRule("name", "desc", "msg"); 33 RuleViolation.RuleViolationComparator comp = new RuleViolation.RuleViolationComparator(); 34 RuleContext ctx = new RuleContext(); 35 ctx.setSourceCodeFilename("filename1"); 36 RuleViolation r1 = new RuleViolation(rule, 10, "description", ctx); 37 ctx.setSourceCodeFilename("filename2"); 38 RuleViolation r2 = new RuleViolation(rule, 20, "description", ctx); 39 assertEquals(-1, comp.compare(r1, r2)); 40 assertEquals(1, comp.compare(r2, r1)); 41 } 42 43 public void testComparatorWithSameFileDifferentLines() { 44 Rule rule = new MockRule("name", "desc", "msg"); 45 RuleViolation.RuleViolationComparator comp = new RuleViolation.RuleViolationComparator(); 46 RuleContext ctx = new RuleContext(); 47 ctx.setSourceCodeFilename("filename"); 48 RuleViolation r1 = new RuleViolation(rule, 10, "description", ctx); 49 RuleViolation r2 = new RuleViolation(rule, 20, "description", ctx); 50 assertTrue(comp.compare(r1, r2) < 0); 51 assertTrue(comp.compare(r2, r1) > 0); 52 } 53 54 public void testComparatorWithSameFileSameLines() { 55 Rule rule = new MockRule("name", "desc", "msg"); 56 RuleViolation.RuleViolationComparator comp = new RuleViolation.RuleViolationComparator(); 57 RuleContext ctx = new RuleContext(); 58 ctx.setSourceCodeFilename("filename"); 59 RuleViolation r1 = new RuleViolation(rule, 10, "description", ctx); 60 RuleViolation r2 = new RuleViolation(rule, 10, "description", ctx); 61 assertEquals(0, comp.compare(r1, r2)); 62 assertEquals(0, comp.compare(r2, r1)); 63 } 64 }

This page was automatically generated by Maven