11package de .doubleslash .kata .designpattern .factory ;
22
33import org .apache .commons .io .output .TeeOutputStream ;
4- import org .junit .After ;
5- import org .junit .Before ;
6- import org .junit .Test ;
4+ import org .junit .jupiter .api .AfterEach ;
5+ import org .junit .jupiter .api .BeforeEach ;
6+ import org .junit .jupiter .api .Disabled ;
7+ import org .junit .jupiter .api .Test ;
78
89import java .io .ByteArrayOutputStream ;
910import java .io .PrintStream ;
1011import java .nio .charset .StandardCharsets ;
1112
12- import static org .hamcrest . CoreMatchers .* ;
13- import static org . junit . Assert . assertThat ;
13+ import static org .assertj . core . api . Assertions . assertThat ;
14+
1415
1516/**
16- * TODO: Das Factory Method Pattern ausimplementieren, so dass alle Tests erfolgreich durchlaufen.
17- * An dieser Testklasse sollen keine Änderungen durchgeführt werden!
17+ * TODO:
18+ * <ul>
19+ * <li>Die {@link Disabled}-Annotation über der Klassendeklaration entfernen</li>
20+ * <li>Das Factory Method Pattern ausimplementieren, so dass alle Tests erfolgreich durchlaufen.</li>
21+ * </ul>
22+ *
23+ * Außer dem Entfernen der Annotation sollen in dieser Klasse keine Änderungen durchgeführt werden!
1824 */
25+ @ Disabled
1926public class LoggerFactoryTest {
2027
2128 private static final String LOG_MESSAGE = "Das ist eine Test-Lognachricht" ;
22- private static final String EMPTY_STRING = "" ;
2329
2430 private ByteArrayOutputStream baos ;
2531
2632 private PrintStream originalSystemOut ;
2733
28- @ Before
29- public void setUp () throws Exception {
34+ @ BeforeEach
35+ public void setUp () {
3036 // Ausgaben nach System.out in einen ByteArrayOutputStream kopieren, damit die Ausgaben später ausgewertet
3137 // werden können
3238 baos = new ByteArrayOutputStream ();
3339 originalSystemOut = System .out ;
3440 System .setOut (new PrintStream (new TeeOutputStream (originalSystemOut , baos )));
3541 }
3642
37- @ After
38- public void tearDown () throws Exception {
43+ @ AfterEach
44+ public void tearDown () {
3945 System .setOut (originalSystemOut );
4046 }
4147
@@ -44,7 +50,7 @@ public void tearDown() throws Exception {
4450 * Logger-Interface implementiert.
4551 */
4652 @ Test
47- public void testWhenCreatingFileLoggerItIsNotNull () throws Exception {
53+ public void testWhenCreatingFileLoggerItIsNotNull () {
4854
4955 // Vorbereiten
5056 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("file" ));
@@ -53,15 +59,15 @@ public void testWhenCreatingFileLoggerItIsNotNull() throws Exception {
5359 Logger logger = factory .getLogger ();
5460
5561 // Auswerten
56- assertThat (logger , is ( notNullValue ()) );
62+ assertThat (logger ). isNotNull ( );
5763 }
5864
5965 /**
6066 * Damit dieser Test erfolgreich ist, muss die LoggerFactory ein Objekt zurückliefern, das das Logger-Interface
6167 * implementiert und den Klassennamen FileLogger hat.
6268 */
6369 @ Test
64- public void testWhenCreatingFileLoggerItsClassNameIsFileLogger () throws Exception {
70+ public void testWhenCreatingFileLoggerItsClassNameIsFileLogger () {
6571
6672 // Vorbereiten
6773 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("file" ));
@@ -70,7 +76,7 @@ public void testWhenCreatingFileLoggerItsClassNameIsFileLogger() throws Exceptio
7076 Logger logger = factory .getLogger ();
7177
7278 // Auswerten
73- assertThat (classNameOf (logger ), is ( equalTo ( "FileLogger" )) );
79+ assertThat (classNameOf (logger )). isEqualTo ( "FileLogger" );
7480 }
7581
7682 /**
@@ -79,7 +85,7 @@ public void testWhenCreatingFileLoggerItsClassNameIsFileLogger() throws Exceptio
7985 * nach System.out schreibt.
8086 */
8187 @ Test
82- public void testWhenLoggingToFileLoggerTheCorrectMessageIsLogged () throws Exception {
88+ public void testWhenLoggingToFileLoggerTheCorrectMessageIsLogged () {
8389
8490 // Vorbereiten
8591 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("file" ));
@@ -99,7 +105,7 @@ public void testWhenLoggingToFileLoggerTheCorrectMessageIsLogged() throws Except
99105 * Logger-Interface implementiert.
100106 */
101107 @ Test
102- public void testWhenCreatingDbLoggerItIsNotNull () throws Exception {
108+ public void testWhenCreatingDbLoggerItIsNotNull () {
103109
104110 // Vorbereiten
105111 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("db" ));
@@ -108,15 +114,15 @@ public void testWhenCreatingDbLoggerItIsNotNull() throws Exception {
108114 Logger logger = factory .getLogger ();
109115
110116 // Auswerten
111- assertThat (logger , is ( notNullValue ()) );
117+ assertThat (logger ). isNotNull ( );
112118 }
113119
114120 /**
115121 * Damit dieser Test erfolgreich ist, muss die LoggerFactory ein Objekt zurückliefern, das das Logger-Interface
116122 * implementiert und den Klassennamen DbLogger hat.
117123 */
118124 @ Test
119- public void testWhenCreatingDbLoggerItsClassNameIsDbLogger () throws Exception {
125+ public void testWhenCreatingDbLoggerItsClassNameIsDbLogger () {
120126
121127 // Vorbereiten
122128 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("db" ));
@@ -125,7 +131,7 @@ public void testWhenCreatingDbLoggerItsClassNameIsDbLogger() throws Exception {
125131 Logger logger = factory .getLogger ();
126132
127133 // Auswerten
128- assertThat (classNameOf (logger ), is ( equalTo ( "DbLogger" )) );
134+ assertThat (classNameOf (logger )). isEqualTo ( "DbLogger" );
129135 }
130136
131137 /**
@@ -134,7 +140,7 @@ public void testWhenCreatingDbLoggerItsClassNameIsDbLogger() throws Exception {
134140 * nach System.out schreibt.
135141 */
136142 @ Test
137- public void testWhenLoggingToDbLoggerTheCorrectMessageIsLogged () throws Exception {
143+ public void testWhenLoggingToDbLoggerTheCorrectMessageIsLogged () {
138144
139145 // Vorbereiten
140146 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("db" ));
@@ -154,7 +160,7 @@ public void testWhenLoggingToDbLoggerTheCorrectMessageIsLogged() throws Exceptio
154160 * Logger-Interface implementiert.
155161 */
156162 @ Test
157- public void testWhenCreatingSilentLoggerItIsNotNull () throws Exception {
163+ public void testWhenCreatingSilentLoggerItIsNotNull () {
158164
159165 // Vorbereiten
160166 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("silent" ));
@@ -163,15 +169,15 @@ public void testWhenCreatingSilentLoggerItIsNotNull() throws Exception {
163169 Logger logger = factory .getLogger ();
164170
165171 // Auswerten
166- assertThat (logger , is ( notNullValue ()) );
172+ assertThat (logger ). isNotNull ( );
167173 }
168174
169175 /**
170176 * Damit dieser Test erfolgreich ist, muss die LoggerFactory ein Objekt zurückliefern, das das Logger-Interface
171177 * implementiert und den Klassennamen SilentLogger hat.
172178 */
173179 @ Test
174- public void testWhenCreatingSilentLoggerItsClassNameIsSilentLogger () throws Exception {
180+ public void testWhenCreatingSilentLoggerItsClassNameIsSilentLogger () {
175181
176182 // Vorbereiten
177183 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("silent" ));
@@ -180,15 +186,15 @@ public void testWhenCreatingSilentLoggerItsClassNameIsSilentLogger() throws Exce
180186 Logger logger = factory .getLogger ();
181187
182188 // Auswerten
183- assertThat (classNameOf (logger ), is ( equalTo ( "SilentLogger" )) );
189+ assertThat (classNameOf (logger )). isEqualTo ( "SilentLogger" );
184190 }
185191
186192 /**
187193 * Damit dieser Test erfolgreich ist, muss die LoggerFactory ein Objekt zurückliefern, das das Logger-Interface
188194 * implementiert, und dessen log(message)-Methode nichts loggt (d.h. nichts nach System.out schreibt).
189195 */
190196 @ Test
191- public void testWhenLoggingToSilentLoggerNothingIsLogged () throws Exception {
197+ public void testWhenLoggingToSilentLoggerNothingIsLogged () {
192198
193199 // Vorbereiten
194200 LoggerFactory factory = new LoggerFactory (new LoggerConfiguration ("silent" ));
@@ -201,18 +207,18 @@ public void testWhenLoggingToSilentLoggerNothingIsLogged() throws Exception {
201207 assertThatNothingWasLogged ();
202208 }
203209
204- private void assertThatMessageWasLogged (String expectedLogMessage ) throws Exception {
210+ private void assertThatMessageWasLogged (String expectedLogMessage ) {
205211 expectedLogMessage = expectedLogMessage .trim ();
206212 String loggedMessage = loggedMessage ().trim ();
207- assertThat (loggedMessage , is ( equalTo ( expectedLogMessage )) );
213+ assertThat (loggedMessage ). isEqualTo ( expectedLogMessage );
208214 }
209215
210- private void assertThatNothingWasLogged () throws Exception {
211- assertThat (loggedMessage (), is ( equalTo ( EMPTY_STRING )) );
216+ private void assertThatNothingWasLogged () {
217+ assertThat (loggedMessage ()). isEmpty ( );
212218 }
213219
214- private String loggedMessage () throws Exception {
215- return baos .toString (StandardCharsets .UTF_8 . name () );
220+ private String loggedMessage () {
221+ return baos .toString (StandardCharsets .UTF_8 );
216222 }
217223
218224 private String classNameOf (Logger logger ) {
0 commit comments