Skip to content

Commit 6907000

Browse files
cstuhtMichel Zimmer
authored and
Michel Zimmer
committed
Switch to JUnit 5
remove support for log4j 1.X
1 parent 48db897 commit 6907000

File tree

12 files changed

+81
-215
lines changed

12 files changed

+81
-215
lines changed

Readme.md

+35-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
# assertj-logging - assertj assertions for logging
22

3-
_assertj-logging_'s intention is to provide an easy way to unit test expected logging for different logging implementations with [JUnit 4](https://junit.org/junit4/) and [AssertJ](https://assertj.github.io/doc/).
3+
_assertj-logging_'s intention is to provide an easy way to unit test expected logging for different logging implementations with [JUnit](https://junit.org/) and [AssertJ](https://assertj.github.io/doc/).
4+
5+
Starting with version 0.5.0 a [JUnit 5 extension](https://junit.org/junit5/docs/current/user-guide/#extensions) is provided and [JUnit 4](https://junit.org/junit4/) is no longer supported.
6+
7+
Versions up to 0.4.X provide a [JUnit 4 `@Rule`](https://github.com/junit-team/junit4/wiki/Rules).
48

59
It currently supports
6-
* [log4j 1.2](https://logging.apache.org/log4j/1.2/): _assertj-logging-log4j12_
710
* [log4j 2.x](https://logging.apache.org/log4j/2.x/): _assertj-logging-log4j_
811
* [logback](http://logback.qos.ch/): _assertj-logging-logback_
912

@@ -35,7 +38,7 @@ _pom.xml_
3538
<dependency>
3639
<groupId>de.neuland-bfi</groupId>
3740
<artifactId>assertj-logging-log4j</artifactId>
38-
<version>0.4.0</version>
41+
<version>0.5.0</version>
3942
<scope>test</scope>
4043
</dependency>
4144
```
@@ -48,6 +51,35 @@ After execution of the code under test this rule can be fed to a set of AssertJ
4851

4952
## Usage
5053

54+
### JUnit 5
55+
56+
```java
57+
import org.junit.jupiter.api.Test;
58+
import org.junit.jupiter.api.extension.RegisterExtension;
59+
60+
import de.neuland.assertj.logging.ExpectedLogging;
61+
62+
import static de.neuland.assertj.logging.ExpectedLoggingAssertions.assertThat;
63+
64+
public class LoggingSourceTest {
65+
@RegisterExtension
66+
private final ExpectedLogging logging = ExpectedLogging.forSource(LoggingSource.class);
67+
68+
@Test
69+
void shouldCaptureLogging() {
70+
// given
71+
String expectedMessage = "Error Message";
72+
73+
// when
74+
new LoggingSource().doSomethingThatLogsErrorMessage();
75+
76+
// then
77+
assertThat(logging).hasErrorMessage(expectedMessage);
78+
}
79+
}
80+
```
81+
82+
### JUnit 4
5183
```java
5284
import org.junit.Rule;
5385
import org.junit.Test;

assertj-logging-core/src/main/java/de/neuland/assertj/logging/GenericExpectedLogging.java

+6-5
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
package de.neuland.assertj.logging;
22

3-
import org.junit.rules.TestWatcher;
4-
import org.junit.runner.Description;
3+
import org.junit.jupiter.api.extension.AfterEachCallback;
4+
import org.junit.jupiter.api.extension.BeforeEachCallback;
5+
import org.junit.jupiter.api.extension.ExtensionContext;
56

67
import java.util.List;
78

@@ -32,7 +33,7 @@
3233
* After executing the method that is expected to log,
3334
* you can verify this with assertj assertions defined in {@code ExpectedLoggingAssert}
3435
*/
35-
public abstract class GenericExpectedLogging<APPENDER extends LogEventCaptureAppender> extends TestWatcher {
36+
public abstract class GenericExpectedLogging<APPENDER extends LogEventCaptureAppender> implements BeforeEachCallback, AfterEachCallback {
3637
final String loggingSource;
3738
private final ThreadLocal<APPENDER> threadLocalAppender = new ThreadLocal<>();
3839

@@ -41,15 +42,15 @@ public abstract class GenericExpectedLogging<APPENDER extends LogEventCaptureApp
4142
}
4243

4344
@Override
44-
protected void starting(Description description) {
45+
public void beforeEach(ExtensionContext context) {
4546
APPENDER captureAppender = addCaptureAppender();
4647
assertLoggerLevelIsAtLeastInfo();
4748

4849
threadLocalAppender.set(captureAppender);
4950
}
5051

5152
@Override
52-
protected void finished(final Description description) {
53+
public void afterEach(ExtensionContext context) {
5354
removeCaptureAppender(threadLocalAppender.get());
5455
}
5556

assertj-logging-core/src/test/java/de/neuland/assertj/logging/GenericExpectedLoggingTest.java

+18-18
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package de.neuland.assertj.logging;
22

3-
import org.junit.Test;
3+
import org.junit.jupiter.api.Test;
44

55
import static de.neuland.assertj.logging.LogLevel.*;
66
import static de.neuland.assertj.logging.TestAssertions.assertThat;
@@ -20,7 +20,7 @@ abstract class GenericExpectedLoggingTest<RULE extends GenericExpectedLogging<?>
2020
abstract void logInfo(String message);
2121

2222
@Test
23-
public void shouldCaptureLogging() {
23+
void shouldCaptureLogging() {
2424
// given
2525
String message = "Error Message";
2626

@@ -32,7 +32,7 @@ public void shouldCaptureLogging() {
3232
}
3333

3434
@Test
35-
public void shouldHaveErrorMessage() {
35+
void shouldHaveErrorMessage() {
3636
// given
3737
String message = "Error Message";
3838

@@ -45,7 +45,7 @@ public void shouldHaveErrorMessage() {
4545
}
4646

4747
@Test
48-
public void shouldNotHaveErrorMessage() {
48+
void shouldNotHaveErrorMessage() {
4949
// given
5050
String infoMessage = "Info Message";
5151
String warningMessage = "Warning Message";
@@ -59,7 +59,7 @@ public void shouldNotHaveErrorMessage() {
5959
}
6060

6161
@Test
62-
public void shouldHaveErrorMessageMatchingRegularExpression() {
62+
void shouldHaveErrorMessageMatchingRegularExpression() {
6363
// given
6464
String message = "Error Message";
6565

@@ -73,7 +73,7 @@ public void shouldHaveErrorMessageMatchingRegularExpression() {
7373
}
7474

7575
@Test
76-
public void shouldHaveErrorMessageMatchingRegularExpressionWithThrowable() {
76+
void shouldHaveErrorMessageMatchingRegularExpressionWithThrowable() {
7777
// given
7878
String message = "Error Message";
7979
Throwable throwable = new RuntimeException("Error Cause");
@@ -88,7 +88,7 @@ public void shouldHaveErrorMessageMatchingRegularExpressionWithThrowable() {
8888
}
8989

9090
@Test
91-
public void shouldHaveErrorMessageWithThrowable() {
91+
void shouldHaveErrorMessageWithThrowable() {
9292
// given
9393
String message = "Error Message";
9494
Throwable throwable = new RuntimeException("Error Cause");
@@ -101,7 +101,7 @@ public void shouldHaveErrorMessageWithThrowable() {
101101
}
102102

103103
@Test
104-
public void shouldHaveWarningMessage() {
104+
void shouldHaveWarningMessage() {
105105
// given
106106
String message = "Warning Message";
107107

@@ -113,7 +113,7 @@ public void shouldHaveWarningMessage() {
113113
}
114114

115115
@Test
116-
public void shouldNotHaveWarningMessage() {
116+
void shouldNotHaveWarningMessage() {
117117
// given
118118
String infoMessage = "Info Message";
119119
String errorMessage = "Error Message";
@@ -127,7 +127,7 @@ public void shouldNotHaveWarningMessage() {
127127
}
128128

129129
@Test
130-
public void shouldHaveWarningMessageWithThrowable() {
130+
void shouldHaveWarningMessageWithThrowable() {
131131
// given
132132
String message = "Warning Message";
133133
Throwable throwable = new RuntimeException("Warning Cause");
@@ -140,7 +140,7 @@ public void shouldHaveWarningMessageWithThrowable() {
140140
}
141141

142142
@Test
143-
public void shouldHaveWarningMessageMatchingRegularExpression() {
143+
void shouldHaveWarningMessageMatchingRegularExpression() {
144144
// given
145145
String message = "Warning Message";
146146

@@ -154,7 +154,7 @@ public void shouldHaveWarningMessageMatchingRegularExpression() {
154154
}
155155

156156
@Test
157-
public void shouldHaveWarningMessageMatchingRegularExpressionWithThrowable() {
157+
void shouldHaveWarningMessageMatchingRegularExpressionWithThrowable() {
158158
// given
159159
String message = "Warning Message";
160160
Throwable throwable = new RuntimeException("Warning Cause");
@@ -169,7 +169,7 @@ public void shouldHaveWarningMessageMatchingRegularExpressionWithThrowable() {
169169
}
170170

171171
@Test
172-
public void shouldHaveInfoMessage() {
172+
void shouldHaveInfoMessage() {
173173
// given
174174
String message = "Info Message";
175175

@@ -181,7 +181,7 @@ public void shouldHaveInfoMessage() {
181181
}
182182

183183
@Test
184-
public void shouldNotHaveInfoMessage() {
184+
void shouldNotHaveInfoMessage() {
185185
// given
186186
String warningMessage = "Warning Message";
187187
String errorMessage = "Error Message";
@@ -195,7 +195,7 @@ public void shouldNotHaveInfoMessage() {
195195
}
196196

197197
@Test
198-
public void shouldHaveInfoMessageMatchingRegularExpression() {
198+
void shouldHaveInfoMessageMatchingRegularExpression() {
199199
// given
200200
String message = "Info Message";
201201

@@ -209,7 +209,7 @@ public void shouldHaveInfoMessageMatchingRegularExpression() {
209209
}
210210

211211
@Test
212-
public void shouldContainErrorMessages() {
212+
void shouldContainErrorMessages() {
213213
// given
214214
String message1 = "Error message one";
215215
String message2 = "Error message two";
@@ -225,7 +225,7 @@ public void shouldContainErrorMessages() {
225225
}
226226

227227
@Test
228-
public void shouldContainWarningMessages() {
228+
void shouldContainWarningMessages() {
229229
// given
230230
String message1 = "Warning message one";
231231
String message2 = "Warning message two";
@@ -241,7 +241,7 @@ public void shouldContainWarningMessages() {
241241
}
242242

243243
@Test
244-
public void shouldContainInfoMessages() {
244+
void shouldContainInfoMessages() {
245245
// given
246246
String message1 = "Info message one";
247247
String message2 = "Info message two";

assertj-logging-log4j/src/test/java/de/neuland/assertj/logging/Log4jExpectedLoggingTest.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
package de.neuland.assertj.logging;
22

33
import org.apache.logging.log4j.Logger;
4-
import org.junit.Before;
5-
import org.junit.Rule;
4+
import org.junit.jupiter.api.BeforeEach;
5+
import org.junit.jupiter.api.extension.RegisterExtension;
66

77

88
public class Log4jExpectedLoggingTest extends GenericExpectedLoggingTest<ExpectedLogging> {
9-
@Rule
10-
public ExpectedLogging logging = ExpectedLogging.forSource(TestLogSource.class);
9+
@RegisterExtension
10+
private final ExpectedLogging logging = ExpectedLogging.forSource(TestLogSource.class);
1111

1212
private TestLogSource logSource;
1313

14-
@Before
14+
@BeforeEach
1515
public void setup() {
1616
logSource = new TestLogSource();
1717
}

assertj-logging-log4j12/src/main/java/de/neuland/assertj/logging/ExpectedLogging.java

-46
This file was deleted.

assertj-logging-log4j12/src/main/java/de/neuland/assertj/logging/ExpectedLoggingAssertions.java

-7
This file was deleted.

assertj-logging-log4j12/src/main/java/de/neuland/assertj/logging/Log4j12LogEventCaptureAppender.java

-58
This file was deleted.

0 commit comments

Comments
 (0)