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.migrator.line;
26
27 import java.util.Arrays;
28
29 import org.junit.Test;
30 import org.slf4j.migrator.line.LineConverter;
31 import org.slf4j.migrator.line.Log4jRuleSet;
32
33 import junit.framework.TestCase;
34
35 import static org.junit.Assert.assertEquals;
36 import static org.junit.Assert.assertTrue;
37
38 public class Log4jRuleSetTest {
39
40 LineConverter log4jConverter = new LineConverter(new Log4jRuleSet());
41
42 @Test
43 public void testImportReplacement() {
44
45 assertEquals("import org.slf4j.LoggerFactory;", log4jConverter
46 .getOneLineReplacement("import org.apache.log4j.LogManager;"));
47
48 assertTrue(Arrays.equals(
49 new String[] {"import org.slf4j.Logger;", "import org.slf4j.LoggerFactory;" },
50 log4jConverter.getReplacement("import org.apache.log4j.Logger;")));
51 }
52
53 @Test
54 public void testLogManagerGetLoggerReplacement() {
55
56 assertEquals(" Logger l = LoggerFactory.getLogger(MyClass.class);",
57 log4jConverter
58 .getOneLineReplacement(" Logger l = LogManager.getLogger(MyClass.class);"));
59
60 assertEquals(
61 "public Logger mylog=LoggerFactory.getLogger(MyClass.class);",
62 log4jConverter
63 .getOneLineReplacement("public Logger mylog=LogManager.getLogger(MyClass.class);"));
64
65 assertEquals(
66 "public static Logger mylog1 = LoggerFactory.getLogger(MyClass.class);",
67 log4jConverter
68 .getOneLineReplacement("public static Logger mylog1 = LogManager.getLogger(MyClass.class);"));
69
70
71 assertEquals(
72 "public static Logger mylog1 = LoggerFactory.getLogger(MyClass.class);//logger instanciation and declaration",
73 log4jConverter
74 .getOneLineReplacement("public static Logger mylog1 = LogManager.getLogger(MyClass.class);//logger instanciation and declaration"));
75
76 assertEquals(
77 " myLog = LoggerFactory.getLogger(MyClass.class);//logger instanciation",
78 log4jConverter
79 .getOneLineReplacement(" myLog = LogManager.getLogger(MyClass.class);//logger instanciation"));
80
81 assertEquals(
82 "//public static Logger mylog1 = LoggerFactory.getLogger(MyClass.class);",
83 log4jConverter
84 .getOneLineReplacement("//public static Logger mylog1 = LogManager.getLogger(MyClass.class);"));
85
86 assertEquals(
87 "// myLog = LoggerFactory.getLogger(MyClass.class);//logger instanciation",
88 log4jConverter
89 .getOneLineReplacement("// myLog = LogManager.getLogger(MyClass.class);//logger instanciation"));
90 }
91
92 @Test
93 public void testLoggerGetLoggerReplacement() {
94
95 assertEquals("Logger l = LoggerFactory.getLogger(MyClass.class);",
96 log4jConverter
97 .getOneLineReplacement("Logger l = Logger.getLogger(MyClass.class);"));
98
99 assertEquals(
100 "public Logger mylog=LoggerFactory.getLogger(MyClass.class);",
101 log4jConverter
102 .getOneLineReplacement("public Logger mylog=Logger.getLogger(MyClass.class);"));
103
104 assertEquals(
105 "public static Logger mylog1 = LoggerFactory.getLogger(MyClass.class);",
106 log4jConverter
107 .getOneLineReplacement("public static Logger mylog1 = Logger.getLogger(MyClass.class);"));
108
109
110 assertEquals(
111 "public static Logger mylog1 = LoggerFactory.getLogger(MyClass.class); // logger instanciation and declaration",
112 log4jConverter
113 .getOneLineReplacement("public static Logger mylog1 = Logger.getLogger(MyClass.class); // logger instanciation and declaration"));
114
115 assertEquals(
116 " myLog = LoggerFactory.getLogger(MyClass.class);//logger instanciation",
117 log4jConverter
118 .getOneLineReplacement(" myLog = Logger.getLogger(MyClass.class);//logger instanciation"));
119
120 assertEquals(
121 "//public static Logger mylog1 = LoggerFactory.getLogger(MyClass.class);",
122 log4jConverter
123 .getOneLineReplacement("//public static Logger mylog1 = Logger.getLogger(MyClass.class);"));
124
125 assertEquals(
126 "// myLog = LoggerFactory.getLogger(MyClass.class);//logger instanciation",
127 log4jConverter
128 .getOneLineReplacement("// myLog = Logger.getLogger(MyClass.class);//logger instanciation"));
129 }
130
131 @Test
132 public void testLogDeclarationReplacement() {
133
134 assertEquals("Logger mylog;", log4jConverter.getOneLineReplacement("Logger mylog;"));
135
136 assertEquals("private Logger mylog;", log4jConverter
137 .getOneLineReplacement("private Logger mylog;"));
138
139
140 assertEquals("public static final Logger myLog;", log4jConverter
141 .getOneLineReplacement("public static final Logger myLog;"));
142
143 assertEquals("public Logger myLog;//logger declaration", log4jConverter
144 .getOneLineReplacement("public Logger myLog;//logger declaration"));
145
146 assertEquals("//private Logger myLog;", log4jConverter
147 .getOneLineReplacement("//private Logger myLog;"));
148 }
149
150 @Test
151 public void testMultiLineReplacement() {
152
153 assertEquals("protected Logger log =", log4jConverter
154 .getOneLineReplacement("protected Logger log ="));
155
156
157 assertEquals(" LoggerFactory.getLogger(MyComponent.class);", log4jConverter
158 .getOneLineReplacement(" LogManager.getLogger(MyComponent.class);"));
159
160 assertEquals("protected Logger log ", log4jConverter
161 .getOneLineReplacement("protected Logger log "));
162
163 assertEquals(
164 " = LoggerFactory.getLogger(MyComponent.class);",
165 log4jConverter
166 .getOneLineReplacement(" = LogManager.getLogger(MyComponent.class);"));
167 }
168
169
170 @Test
171 public void categoryReplacement() {
172
173 assertEquals("protected Logger cat =", log4jConverter
174 .getOneLineReplacement("protected Category cat ="));
175
176 assertEquals(" LoggerFactory.getLogger(MyComponent.class);", log4jConverter
177 .getOneLineReplacement(" Category.getInstance(MyComponent.class);"));
178 }
179
180 }