diff --git a/ethereumj-core/src/test/java/test/ethereum/net/DisconnectMessageTest.java b/ethereumj-core/src/test/java/test/ethereum/net/DisconnectMessageTest.java index fb1d56a0..f18b2fd5 100644 --- a/ethereumj-core/src/test/java/test/ethereum/net/DisconnectMessageTest.java +++ b/ethereumj-core/src/test/java/test/ethereum/net/DisconnectMessageTest.java @@ -1,5 +1,11 @@ package test.ethereum.net; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.assertFalse; + +import java.lang.System; + import org.ethereum.net.message.ReasonCode; import org.ethereum.net.p2p.DisconnectMessage; @@ -49,16 +55,58 @@ public class DisconnectMessageTest { assertEquals(ReasonCode.INCOMPATIBLE_NETWORK, disconnectMessage.getReason()); } - @Test //handling unknown codes properly + @Test //handling boundary-high public void test_4() { - String disconnectMessageRaw = "C25555"; + String disconnectMessageRaw = "C28080"; byte[] payload = Hex.decode(disconnectMessageRaw); DisconnectMessage disconnectMessage = new DisconnectMessage(payload); System.out.println(disconnectMessage); - assertEquals(disconnectMessage.getReason(), ReasonCode.UNKNOWN); + assertEquals(disconnectMessage.getReason(), ReasonCode.REQUESTED); //high numbers are zeroed + } + + @Test //handling boundary-low + public void test_5() { + + String disconnectMessageRaw = "C20000"; + byte[] payload = Hex.decode(disconnectMessageRaw); + + DisconnectMessage disconnectMessage = new DisconnectMessage(payload); + System.out.println(disconnectMessage); + + assertEquals(disconnectMessage.getReason(), ReasonCode.REQUESTED); + } + + @Test //handling boundary-low minus 1 (error) + public void test_6() { + + String disconnectMessageRaw = "C19999"; + byte[] payload = Hex.decode(disconnectMessageRaw); + + try{ + DisconnectMessage disconnectMessage = new DisconnectMessage(payload); + disconnectMessage.toString(); //throws exception + assertTrue("Valid raw encoding for disconnectMessage", false); + } catch (RuntimeException e) { + assertTrue("Invalid raw encoding for disconnectMessage", true); + } + } + + @Test //handling boundary-high plus 1 (error) + public void test_7() { + + String disconnectMessageRaw = "C28081"; + byte[] payload = Hex.decode(disconnectMessageRaw); + + try{ + DisconnectMessage disconnectMessage = new DisconnectMessage(payload); + disconnectMessage.toString(); //throws exception + assertTrue("Valid raw encoding for disconnectMessage", false); + } catch (RuntimeException e) { + assertTrue("Invalid raw encoding for disconnectMessage", true); + } } } diff --git a/ethereumj-core/src/test/java/test/ethereum/net/HelloMessageTest.java b/ethereumj-core/src/test/java/test/ethereum/net/HelloMessageTest.java index 7f4886f9..d6a5a5f6 100644 --- a/ethereumj-core/src/test/java/test/ethereum/net/HelloMessageTest.java +++ b/ethereumj-core/src/test/java/test/ethereum/net/HelloMessageTest.java @@ -1,10 +1,5 @@ package test.ethereum.net; -<<<<<<< HEAD -import org.ethereum.net.p2p.HelloMessage; -import org.ethereum.net.p2p.P2pMessageCodes; - -======= import static org.junit.Assert.assertEquals; import java.util.Arrays; @@ -17,7 +12,6 @@ import org.ethereum.net.p2p.HelloMessage; import org.ethereum.net.p2p.P2pMessageCodes; import org.ethereum.net.p2p.P2pHandler; import org.ethereum.net.shh.ShhHandler; ->>>>>>> 0266dac... Added fail tests, constructor tests import org.junit.Test; import org.slf4j.Logger;