package net.tomp2p; import static org.junit.Assert.assertEquals; import java.net.InetAddress; import net.tomp2p.peers.PeerSocketAddress; import net.tomp2p.storage.AlternativeCompositeByteBuf; import org.junit.Test; public class PeerSocketAddressTest { @Test public void encodeDecodeTest() throws Exception { InetAddress sampleAddress1 = InetAddress.getByName("192.168.1.1"); InetAddress sampleAddress2 = InetAddress.getByName("255.255.255.255"); InetAddress sampleAddress3 = InetAddress.getByName("127.0.0.1"); InetAddress sampleAddress4 = InetAddress.getByName("0:1:2:3:4:5:6:7"); InetAddress sampleAddress5 = InetAddress.getByName("7:6:5:4:3:2:1:0"); PeerSocketAddress psa1 = new PeerSocketAddress(sampleAddress1, 0, 0); PeerSocketAddress psa2 = new PeerSocketAddress(sampleAddress2, 65535, 65535); PeerSocketAddress psa3 = new PeerSocketAddress(sampleAddress3, 1, 1); PeerSocketAddress psa4 = new PeerSocketAddress(sampleAddress4, 2, 2); PeerSocketAddress psa5 = new PeerSocketAddress(sampleAddress5, 30, 40); PeerSocketAddress psa6 = new PeerSocketAddress(sampleAddress1, 88, 88); PeerSocketAddress psa7 = new PeerSocketAddress(sampleAddress2, 177, 177); PeerSocketAddress psa8 = new PeerSocketAddress(sampleAddress3, 60000, 65000); PeerSocketAddress psa9 = new PeerSocketAddress(sampleAddress4, 99, 100); PeerSocketAddress psa10 = new PeerSocketAddress(sampleAddress5, 13, 1234); // encode byte[] psa1_e = psa1.toByteArray(); byte[] psa2_e = psa2.toByteArray(); byte[] psa3_e = psa3.toByteArray(); byte[] psa4_e = psa4.toByteArray(); byte[] psa5_e = psa5.toByteArray(); byte[] psa6_e = psa6.toByteArray(); byte[] psa7_e = psa7.toByteArray(); byte[] psa8_e = psa8.toByteArray(); byte[] psa9_e = psa9.toByteArray(); byte[] psa10_e = psa10.toByteArray(); // decode AlternativeCompositeByteBuf buf1 = AlternativeCompositeByteBuf.compBuffer(); buf1.writeBytes(psa1_e); PeerSocketAddress psa1_d = PeerSocketAddress.create(buf1, true); AlternativeCompositeByteBuf buf2 = AlternativeCompositeByteBuf.compBuffer(); buf2.writeBytes(psa2_e); PeerSocketAddress psa2_d = PeerSocketAddress.create(buf2, true); AlternativeCompositeByteBuf buf3 = AlternativeCompositeByteBuf.compBuffer(); buf3.writeBytes(psa3_e); PeerSocketAddress psa3_d = PeerSocketAddress.create(buf3, true); AlternativeCompositeByteBuf buf4 = AlternativeCompositeByteBuf.compBuffer(); buf4.writeBytes(psa4_e); PeerSocketAddress psa4_d = PeerSocketAddress.create(buf4, false); AlternativeCompositeByteBuf buf5 = AlternativeCompositeByteBuf.compBuffer(); buf5.writeBytes(psa5_e); PeerSocketAddress psa5_d = PeerSocketAddress.create(buf5, false); AlternativeCompositeByteBuf buf6 = AlternativeCompositeByteBuf.compBuffer(); buf6.writeBytes(psa6_e); PeerSocketAddress psa6_d = PeerSocketAddress.create(buf6, true); AlternativeCompositeByteBuf buf7 = AlternativeCompositeByteBuf.compBuffer(); buf7.writeBytes(psa7_e); PeerSocketAddress psa7_d = PeerSocketAddress.create(buf7, true); AlternativeCompositeByteBuf buf8 = AlternativeCompositeByteBuf.compBuffer(); buf8.writeBytes(psa8_e); PeerSocketAddress psa8_d = PeerSocketAddress.create(buf8, true); AlternativeCompositeByteBuf buf9 = AlternativeCompositeByteBuf.compBuffer(); buf9.writeBytes(psa9_e); PeerSocketAddress psa9_d = PeerSocketAddress.create(buf9, false); AlternativeCompositeByteBuf buf10 = AlternativeCompositeByteBuf.compBuffer(); buf10.writeBytes(psa10_e); PeerSocketAddress psa10_d = PeerSocketAddress.create(buf10, false); // compare assertEquals(psa1, psa1_d); assertEquals(psa2, psa2_d); assertEquals(psa3, psa3_d); assertEquals(psa4, psa4_d); assertEquals(psa5, psa5_d); assertEquals(psa6, psa6_d); assertEquals(psa7, psa7_d); assertEquals(psa8, psa8_d); assertEquals(psa9, psa9_d); assertEquals(psa10, psa10_d); } }