1   /***
2    * <copyright>
3    *  Copyright 1997-2002 InfoEther, LLC
4    *  under sponsorship of the Defense Advanced Research Projects Agency
5    (DARPA).
6    *
7    *  This program is free software; you can redistribute it and/or modify
8    *  it under the terms of the Cougaar Open Source License as published
9    by
10   *  DARPA on the Cougaar Open Source Website (www.cougaar.org).
11   *
12   *  THE COUGAAR SOFTWARE AND ANY DERIVATIVE SUPPLIED BY LICENSOR IS
13   *  PROVIDED 'AS IS' WITHOUT WARRANTIES OF ANY KIND, WHETHER EXPRESS OR
14   *  IMPLIED, INCLUDING (BUT NOT LIMITED TO) ALL IMPLIED WARRANTIES OF
15   *  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, AND WITHOUT
16   *  ANY WARRANTIES AS TO NON-INFRINGEMENT.  IN NO EVENT SHALL COPYRIGHT
17   *  HOLDER BE LIABLE FOR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL
18   *  DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE OF DATA OR PROFITS,
19   *  TORTIOUS CONDUCT, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20   *  PERFORMANCE OF THE COUGAAR SOFTWARE.
21   * </copyright>
22   */
23  package test.net.sourceforge.pmd;
24  
25  import junit.framework.TestCase;
26  
27  public class RuleViolationTest extends TestCase {
28  
29      public void testConstructor1() {
30  /*
31          Rule rule = new MockRule("name", "desc", "msg", "rulesetname");
32          RuleContext ctx = new RuleContext();
33          ctx.setSourceCodeFilename("filename");
34          SimpleNode s = new SimpleJavaNode(1);
35          s.testingOnly__setBeginLine(2);
36          RuleViolation r = new RuleViolation(rule, ctx, s);
37          assertEquals("object mismatch", rule, r.getRule());
38          assertEquals("line number is wrong", 2, r.getBeginLine());
39          assertEquals("filename is wrong", "filename", r.getFilename());
40  */
41      }
42  
43  /*
44      public void testConstructor2() {
45          Rule rule = new MockRule("name", "desc", "msg", "rulesetname");
46          RuleContext ctx = new RuleContext();
47          ctx.setSourceCodeFilename("filename");
48          SimpleNode s = new SimpleJavaNode(1);
49          s.testingOnly__setBeginLine(2);
50          RuleViolation r = new RuleViolation(rule, ctx, s, "description");
51          assertEquals("object mismatch", rule, r.getRule());
52          assertEquals("line number is wrong", 2, r.getBeginLine());
53          assertEquals("filename is wrong", "filename", r.getFilename());
54          assertEquals("description is wrong", "description", r.getDescription());
55      }
56  
57      public void testComparatorWithDifferentFilenames() {
58          Rule rule = new MockRule("name", "desc", "msg", "rulesetname");
59          RuleViolation.RuleViolationComparator comp = new RuleViolation.RuleViolationComparator();
60          RuleContext ctx = new RuleContext();
61          ctx.setSourceCodeFilename("filename1");
62          SimpleNode s = new SimpleJavaNode(1);
63          s.testingOnly__setBeginLine(10);
64          RuleViolation r1 = new RuleViolation(rule, ctx, s, "description");
65          ctx.setSourceCodeFilename("filename2");
66          SimpleNode s1 = new SimpleJavaNode(1);
67          s1.testingOnly__setBeginLine(10);
68          RuleViolation r2 = new RuleViolation(rule, ctx, s1, "description");
69          assertEquals(-1, comp.compare(r1, r2));
70          assertEquals(1, comp.compare(r2, r1));
71      }
72  
73      public void testComparatorWithSameFileDifferentLines() {
74          Rule rule = new MockRule("name", "desc", "msg", "rulesetname");
75          RuleViolation.RuleViolationComparator comp = new RuleViolation.RuleViolationComparator();
76          RuleContext ctx = new RuleContext();
77          ctx.setSourceCodeFilename("filename");
78          SimpleNode s = new SimpleJavaNode(1);
79          s.testingOnly__setBeginLine(10);
80          SimpleNode s1 = new SimpleJavaNode(1);
81          s1.testingOnly__setBeginLine(20);
82          RuleViolation r1 = new RuleViolation(rule, ctx, s, "description");
83          RuleViolation r2 = new RuleViolation(rule, ctx, s1, "description");
84          assertTrue(comp.compare(r1, r2) < 0);
85          assertTrue(comp.compare(r2, r1) > 0);
86      }
87  
88      public void testComparatorWithSameFileSameLines() {
89          Rule rule = new MockRule("name", "desc", "msg", "rulesetname");
90          RuleViolation.RuleViolationComparator comp = new RuleViolation.RuleViolationComparator();
91          RuleContext ctx = new RuleContext();
92          ctx.setSourceCodeFilename("filename");
93          SimpleNode s = new SimpleJavaNode(1);
94          s.testingOnly__setBeginLine(10);
95          SimpleNode s1 = new SimpleJavaNode(1);
96          s1.testingOnly__setBeginLine(10);
97          RuleViolation r1 = new RuleViolation(rule, ctx, s, "description");
98          RuleViolation r2 = new RuleViolation(rule, ctx, s1, "description");
99          assertEquals(1, comp.compare(r1, r2));
100         assertEquals(1, comp.compare(r2, r1));
101     }
102 */
103 }