1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 package org.slf4j.simple;
26
27 import static org.junit.Assert.assertNull;
28
29 import java.io.PrintStream;
30
31 import org.junit.After;
32 import org.junit.Before;
33 import org.junit.Test;
34 import org.slf4j.Logger;
35 import org.slf4j.LoggerFactory;
36 import org.slf4j.MDC;
37 import org.slf4j.Marker;
38 import org.slf4j.MarkerFactory;
39
40
41
42
43
44
45
46 public class InvocationTest {
47
48 PrintStream old = System.err;
49
50 @Before
51 public void setUp() throws Exception {
52 System.setErr(new SilentPrintStream(old));
53 }
54
55 @After
56 public void tearDown() throws Exception {
57 System.setErr(old);
58 }
59
60 @Test
61 public void test1() {
62 Logger logger = LoggerFactory.getLogger("test1");
63 logger.debug("Hello world.");
64 }
65
66 @Test
67 public void test2() {
68 Integer i1 = Integer.valueOf(1);
69 Integer i2 = Integer.valueOf(2);
70 Integer i3 = Integer.valueOf(3);
71 Exception e = new Exception("This is a test exception.");
72 Logger logger = LoggerFactory.getLogger("test2");
73
74 logger.debug("Hello world 1.");
75 logger.debug("Hello world {}", i1);
76 logger.debug("val={} val={}", i1, i2);
77 logger.debug("val={} val={} val={}", new Object[] { i1, i2, i3 });
78
79 logger.debug("Hello world 2", e);
80 logger.info("Hello world 2.");
81
82 logger.warn("Hello world 3.");
83 logger.warn("Hello world 3", e);
84
85 logger.error("Hello world 4.");
86 logger.error("Hello world {}", Integer.valueOf(3));
87 logger.error("Hello world 4.", e);
88 }
89
90
91
92 @Test
93 public void testNullParameter_BUG78() {
94 Logger logger = LoggerFactory.getLogger("testNullParameter_BUG78");
95 String[] parameters = null;
96 String msg = "hello {}";
97 logger.info(msg, (Object[]) parameters);
98 }
99
100 @Test
101 public void testNull() {
102 Logger logger = LoggerFactory.getLogger("testNull");
103 logger.debug(null);
104 logger.info(null);
105 logger.warn(null);
106 logger.error(null);
107
108 Exception e = new Exception("This is a test exception.");
109 logger.debug(null, e);
110 logger.info(null, e);
111 logger.warn(null, e);
112 logger.error(null, e);
113 }
114
115 @Test
116 public void testMarker() {
117 Logger logger = LoggerFactory.getLogger("testMarker");
118 Marker blue = MarkerFactory.getMarker("BLUE");
119 logger.debug(blue, "hello");
120 logger.info(blue, "hello");
121 logger.warn(blue, "hello");
122 logger.error(blue, "hello");
123
124 logger.debug(blue, "hello {}", "world");
125 logger.info(blue, "hello {}", "world");
126 logger.warn(blue, "hello {}", "world");
127 logger.error(blue, "hello {}", "world");
128
129 logger.debug(blue, "hello {} and {} ", "world", "universe");
130 logger.info(blue, "hello {} and {} ", "world", "universe");
131 logger.warn(blue, "hello {} and {} ", "world", "universe");
132 logger.error(blue, "hello {} and {} ", "world", "universe");
133 }
134
135 @Test
136 public void testMDC() {
137 MDC.put("k", "v");
138 assertNull(MDC.get("k"));
139 MDC.remove("k");
140 assertNull(MDC.get("k"));
141 MDC.clear();
142 }
143 }