1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package com.puppycrawl.tools.checkstyle.api;
21
22 import static com.google.common.truth.Truth.assertWithMessage;
23
24 import org.junit.jupiter.api.Test;
25
26 public class SeverityLevelCounterTest {
27
28 @Test
29 public void testCtorException() {
30 try {
31 final Object test = new SeverityLevelCounter(null);
32 assertWithMessage("exception expected but got %s", test)
33 .fail();
34 }
35 catch (IllegalArgumentException ex) {
36 assertWithMessage("Invalid exception message")
37 .that(ex)
38 .hasMessageThat()
39 .isEqualTo("'level' cannot be null");
40 }
41 }
42
43 @Test
44 public void testAddError() {
45 final SeverityLevelCounter counter = new SeverityLevelCounter(SeverityLevel.ERROR);
46 assertWithMessage("Invalid severity level count")
47 .that(counter.getCount())
48 .isEqualTo(0);
49
50 counter.addError(new AuditEvent(this, "ATest.java", null));
51 counter.addError(new AuditEvent(this, "ATest.java", new Violation(1, 2, 0, null,
52 null, null, SeverityLevel.INFO, null, null, null)));
53
54 counter.addError(new AuditEvent(this, "ATest.java", new Violation(1, 2, 0, null,
55 null, null, SeverityLevel.ERROR, null, null, null)));
56 assertWithMessage("Invalid severity level count")
57 .that(counter.getCount())
58 .isEqualTo(1);
59 }
60
61 @Test
62 public void testAddException() {
63 final SeverityLevelCounter counter = new SeverityLevelCounter(SeverityLevel.ERROR);
64 final AuditEvent event = new AuditEvent(this, "ATest.java", null);
65 assertWithMessage("Invalid severity level count")
66 .that(counter.getCount())
67 .isEqualTo(0);
68 counter.addException(event, new IllegalStateException("Test IllegalStateException"));
69 assertWithMessage("Invalid severity level count")
70 .that(counter.getCount())
71 .isEqualTo(1);
72 }
73
74 @Test
75 public void testAddExceptionWarning() {
76 final SeverityLevelCounter counter = new SeverityLevelCounter(SeverityLevel.WARNING);
77 final AuditEvent event = new AuditEvent(this, "ATest.java", null);
78 assertWithMessage("Invalid severity level count")
79 .that(counter.getCount())
80 .isEqualTo(0);
81 counter.addException(event, new IllegalStateException("Test IllegalStateException"));
82 assertWithMessage("Invalid severity level count")
83 .that(counter.getCount())
84 .isEqualTo(0);
85 }
86
87 @Test
88 public void testAuditStartedClearsState() {
89 final SeverityLevelCounter counter = new SeverityLevelCounter(SeverityLevel.ERROR);
90 final AuditEvent event = new AuditEvent(this, "ATest.java", null);
91 final AuditEvent secondEvent = new AuditEvent(this, "BTest.java", null);
92
93 counter.auditStarted(event);
94 assertWithMessage("Invalid severity level count")
95 .that(counter.getCount())
96 .isEqualTo(0);
97
98 counter.addException(event, new IllegalStateException("Test IllegalStateException"));
99 assertWithMessage("Invalid severity level count")
100 .that(counter.getCount())
101 .isEqualTo(1);
102
103 counter.auditStarted(secondEvent);
104 assertWithMessage("Invalid severity level count")
105 .that(counter.getCount())
106 .isEqualTo(0);
107 }
108
109 }