Skip to content

Commit f9a86f7

Browse files
committed
feat(test): improve unit test coverage
1 parent 773b374 commit f9a86f7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+3978
-100
lines changed
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
package org.tron.common;
2+
3+
import static org.junit.Assert.assertEquals;
4+
import static org.junit.Assert.assertNotNull;
5+
import static org.junit.Assert.assertTrue;
6+
7+
import com.google.common.collect.Lists;
8+
import java.util.HashMap;
9+
import org.apache.commons.collections4.CollectionUtils;
10+
import org.junit.Before;
11+
import org.junit.Test;
12+
import org.tron.common.entity.NodeInfo;
13+
import org.tron.common.entity.NodeInfo.MachineInfo;
14+
import org.tron.common.entity.NodeInfo.MachineInfo.DeadLockThreadInfo;
15+
16+
public class EntityTest {
17+
18+
private final MachineInfo machineInfo = new MachineInfo();
19+
private final DeadLockThreadInfo deadLockThreadInfo = new DeadLockThreadInfo();
20+
21+
@Before
22+
public void setup() {
23+
deadLockThreadInfo.setName("name");
24+
deadLockThreadInfo.setLockName("lockName");
25+
deadLockThreadInfo.setLockOwner("lockOwner");
26+
deadLockThreadInfo.setState("state");
27+
deadLockThreadInfo.setStackTrace("stackTrace");
28+
deadLockThreadInfo.setWaitTime(0L);
29+
deadLockThreadInfo.setBlockTime(0L);
30+
machineInfo.setDeadLockThreadInfoList(Lists.newArrayList(deadLockThreadInfo));
31+
machineInfo.setJavaVersion("1.8");
32+
machineInfo.setOsName("linux");
33+
}
34+
35+
@Test
36+
public void testMachineInfo() {
37+
machineInfo.setDeadLockThreadCount(3);
38+
assertTrue(CollectionUtils.isNotEmpty(machineInfo.getDeadLockThreadInfoList()));
39+
assertEquals(3, machineInfo.getDeadLockThreadCount());
40+
41+
}
42+
43+
@Test
44+
public void testDeadLockThreadInfo() {
45+
assertEquals("name", deadLockThreadInfo.getName());
46+
assertEquals("lockName", deadLockThreadInfo.getLockName());
47+
assertEquals("lockOwner", deadLockThreadInfo.getLockOwner());
48+
assertEquals("state", deadLockThreadInfo.getState());
49+
assertEquals("stackTrace", deadLockThreadInfo.getStackTrace());
50+
assertEquals(0, deadLockThreadInfo.getBlockTime());
51+
assertEquals(0, deadLockThreadInfo.getWaitTime());
52+
53+
}
54+
55+
@Test
56+
public void testNodeInfo() {
57+
NodeInfo nodeInfo = new NodeInfo();
58+
nodeInfo.setTotalFlow(1L);
59+
nodeInfo.setCheatWitnessInfoMap(new HashMap<>());
60+
assertEquals(1, nodeInfo.getTotalFlow());
61+
assertNotNull(nodeInfo.getCheatWitnessInfoMap());
62+
nodeInfo.setMachineInfo(machineInfo);
63+
nodeInfo.setBlock("block");
64+
nodeInfo.setSolidityBlock("solidityBlock");
65+
nodeInfo.transferToProtoEntity();
66+
}
67+
}
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
package org.tron.common;
2+
3+
import static org.junit.Assert.assertEquals;
4+
import static org.junit.Assert.assertFalse;
5+
import static org.junit.Assert.assertNotNull;
6+
import static org.junit.Assert.assertTrue;
7+
8+
import ch.qos.logback.classic.Level;
9+
import ch.qos.logback.classic.Logger;
10+
import ch.qos.logback.classic.LoggerContext;
11+
import ch.qos.logback.classic.spi.ILoggingEvent;
12+
import ch.qos.logback.classic.spi.LoggingEvent;
13+
import org.junit.Before;
14+
import org.junit.Test;
15+
import org.slf4j.LoggerFactory;
16+
import org.tron.common.log.layout.MultiLayoutPattern;
17+
18+
public class MultiLayoutPatternTest {
19+
20+
private MultiLayoutPattern multiLayoutPattern;
21+
private LoggerContext context;
22+
23+
@Before
24+
public void setUp() {
25+
context = new LoggerContext();
26+
multiLayoutPattern = new MultiLayoutPattern();
27+
multiLayoutPattern.setContext(context);
28+
29+
MultiLayoutPattern.Rule rule1 = new MultiLayoutPattern.Rule();
30+
rule1.setLogger("com.example.app1");
31+
assertNotNull(rule1.getLogger());
32+
rule1.setPattern("%date [%thread] %-5level %logger{36} - %msg%n");
33+
assertNotNull(rule1.getPattern());
34+
rule1.setOutputPatternAsHeader(true);
35+
assertTrue(rule1.isOutputPatternAsHeader());
36+
multiLayoutPattern.addRule(rule1);
37+
38+
MultiLayoutPattern.Rule rule2 = new MultiLayoutPattern.Rule();
39+
rule2.setLogger("com.example.app2");
40+
rule2.setPattern("%msg%n");
41+
multiLayoutPattern.addRule(rule2);
42+
43+
multiLayoutPattern.start();
44+
}
45+
46+
@Test
47+
public void testEncodeForSpecificLogger() {
48+
ILoggingEvent event1 = createLoggingEvent("com.example.app1", "Test message 1");
49+
byte[] encoded1 = multiLayoutPattern.encode(event1);
50+
String result1 = new String(encoded1);
51+
assertTrue(result1.contains("Test message 1"));
52+
53+
ILoggingEvent event2 = createLoggingEvent("com.example.app2", "Test message 2");
54+
byte[] encoded2 = multiLayoutPattern.encode(event2);
55+
String result2 = new String(encoded2);
56+
assertEquals("Test message 2\n", result2);
57+
}
58+
59+
@Test
60+
public void testEncodeForRootLogger() {
61+
ILoggingEvent event = createLoggingEvent(Logger.ROOT_LOGGER_NAME, "Root logger message");
62+
byte[] encoded = multiLayoutPattern.encode(event);
63+
String result = new String(encoded);
64+
assertFalse(result.contains("Root logger message"));
65+
}
66+
67+
private ILoggingEvent createLoggingEvent(String loggerName, String message) {
68+
Logger logger = (Logger) LoggerFactory.getLogger(loggerName);
69+
return new LoggingEvent(loggerName, logger, Level.INFO, message, null, null);
70+
}
71+
72+
}

0 commit comments

Comments
 (0)