View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.maven.building;
20  
21  import org.apache.maven.building.Problem.Severity;
22  import org.junit.Test;
23  
24  import static org.junit.Assert.assertEquals;
25  import static org.junit.Assert.assertSame;
26  
27  public class DefaultProblemTest {
28  
29      @Test
30      public void testGetSeverity() {
31          DefaultProblem problem = new DefaultProblem(null, null, null, -1, -1, null);
32          assertEquals(Severity.ERROR, problem.getSeverity());
33  
34          problem = new DefaultProblem(null, Severity.FATAL, null, -1, -1, null);
35          assertEquals(Severity.FATAL, problem.getSeverity());
36  
37          problem = new DefaultProblem(null, Severity.ERROR, null, -1, -1, null);
38          assertEquals(Severity.ERROR, problem.getSeverity());
39  
40          problem = new DefaultProblem(null, Severity.WARNING, null, -1, -1, null);
41          assertEquals(Severity.WARNING, problem.getSeverity());
42      }
43  
44      @Test
45      public void testGetLineNumber() {
46          DefaultProblem problem = new DefaultProblem(null, null, null, -1, -1, null);
47          assertEquals(-1, problem.getLineNumber());
48  
49          problem = new DefaultProblem(null, null, null, 42, -1, null);
50          assertEquals(42, problem.getLineNumber());
51  
52          problem = new DefaultProblem(null, null, null, Integer.MAX_VALUE, -1, null);
53          assertEquals(Integer.MAX_VALUE, problem.getLineNumber());
54  
55          // this case is not specified, might also return -1
56          problem = new DefaultProblem(null, null, null, Integer.MIN_VALUE, -1, null);
57          assertEquals(Integer.MIN_VALUE, problem.getLineNumber());
58      }
59  
60      @Test
61      public void testGetColumnNumber() {
62          DefaultProblem problem = new DefaultProblem(null, null, null, -1, -1, null);
63          assertEquals(-1, problem.getColumnNumber());
64  
65          problem = new DefaultProblem(null, null, null, -1, 42, null);
66          assertEquals(42, problem.getColumnNumber());
67  
68          problem = new DefaultProblem(null, null, null, -1, Integer.MAX_VALUE, null);
69          assertEquals(Integer.MAX_VALUE, problem.getColumnNumber());
70  
71          // this case is not specified, might also return -1
72          problem = new DefaultProblem(null, null, null, -1, Integer.MIN_VALUE, null);
73          assertEquals(Integer.MIN_VALUE, problem.getColumnNumber());
74      }
75  
76      @Test
77      public void testGetException() {
78          DefaultProblem problem = new DefaultProblem(null, null, null, -1, -1, null);
79          assertEquals(null, problem.getException());
80  
81          Exception e = new Exception();
82          problem = new DefaultProblem(null, null, null, -1, -1, e);
83          assertSame(e, problem.getException());
84      }
85  
86      @Test
87      public void testGetSource() {
88          DefaultProblem problem = new DefaultProblem(null, null, null, -1, -1, null);
89          assertEquals("", problem.getSource());
90  
91          problem = new DefaultProblem(null, null, "", -1, -1, null);
92          assertEquals("", problem.getSource());
93  
94          problem = new DefaultProblem(null, null, "SOURCE", -1, -1, null);
95          assertEquals("SOURCE", problem.getSource());
96      }
97  
98      @Test
99      public void testGetLocation() {
100         DefaultProblem problem = new DefaultProblem(null, null, null, -1, -1, null);
101         assertEquals("", problem.getLocation());
102 
103         problem = new DefaultProblem(null, null, "SOURCE", -1, -1, null);
104         assertEquals("SOURCE", problem.getLocation());
105 
106         problem = new DefaultProblem(null, null, null, 42, -1, null);
107         assertEquals("line 42", problem.getLocation());
108 
109         problem = new DefaultProblem(null, null, null, -1, 127, null);
110         assertEquals("column 127", problem.getLocation());
111 
112         problem = new DefaultProblem(null, null, "SOURCE", 42, 127, null);
113         assertEquals("SOURCE, line 42, column 127", problem.getLocation());
114     }
115 
116     @Test
117     public void testGetMessage() {
118         DefaultProblem problem = new DefaultProblem("MESSAGE", null, null, -1, -1, null);
119         assertEquals("MESSAGE", problem.getMessage());
120 
121         problem = new DefaultProblem(null, null, null, -1, -1, new Exception());
122         assertEquals("", problem.getMessage());
123 
124         problem = new DefaultProblem(null, null, null, -1, -1, new Exception("EXCEPTION MESSAGE"));
125         assertEquals("EXCEPTION MESSAGE", problem.getMessage());
126     }
127 }