Skip to content

Commit b994094

Browse files
committed
feat(test): add the nullWitnessAddress test
1 parent 945271a commit b994094

File tree

1 file changed

+26
-1
lines changed

1 file changed

+26
-1
lines changed

framework/src/test/java/org/tron/core/net/services/RelayServiceTest.java

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import com.google.common.collect.Lists;
66
import com.google.protobuf.ByteString;
77
import java.lang.reflect.Field;
8+
import java.lang.reflect.InvocationTargetException;
89
import java.lang.reflect.Method;
910
import java.net.InetSocketAddress;
1011
import java.util.ArrayList;
@@ -168,4 +169,28 @@ private void testCheckHelloMessage() {
168169
logger.info("{}", e.getMessage());
169170
}
170171
}
171-
}
172+
173+
@Test
174+
public void testNullWitnessAddress() {
175+
try {
176+
Class<?> clazz = service.getClass();
177+
178+
Field keySizeField = clazz.getDeclaredField("keySize");
179+
keySizeField.setAccessible(true);
180+
keySizeField.set(service, 0);
181+
182+
Field witnessAddressField = clazz.getDeclaredField("witnessAddress");
183+
witnessAddressField.setAccessible(true);
184+
witnessAddressField.set(service, null);
185+
186+
Method isActiveWitnessMethod = clazz.getDeclaredMethod("isActiveWitness");
187+
isActiveWitnessMethod.setAccessible(true);
188+
189+
Object result = isActiveWitnessMethod.invoke(service);
190+
Assert.assertFalse(Boolean.TRUE.equals(result));
191+
} catch (NoSuchMethodException | NoSuchFieldException |
192+
IllegalAccessException | InvocationTargetException e) {
193+
Assert.fail("Reflection invocation failed: " + e.getMessage());
194+
}
195+
}
196+
}

0 commit comments

Comments
 (0)