@Test void shouldSupportDomainNameWithPort() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "my.domain:123", SocketAddress::new ); assertEquals( "my.domain", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "my.domain:123", socketAddress.toString() ); }
@Test void shouldSupportPortOnly() { SocketAddress socketAddress = SocketAddressParser.deriveSocketAddress( "setting.name", ":123", "my.domain", 456, SocketAddress::new ); assertEquals( "my.domain", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "my.domain:123", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldNotUseDefaultsWhenSettingValueSupplied() { SocketAddress socketAddress = SocketAddressParser.deriveSocketAddress( "setting.name", "[fe80:3:4::6]:456", "fe80:1:2::4", 123, SocketAddress::new ); assertEquals( "fe80:3:4::6", socketAddress.getHostname() ); assertEquals( 456, socketAddress.getPort() ); assertEquals( "[fe80:3:4::6]:456", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldSupportIPv6AddressWithBrackets() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "[fe80:1:2:3:4::5]:123", SocketAddress::new ); assertEquals( "fe80:1:2:3:4::5", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "[fe80:1:2:3:4::5]:123", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldSupportDefaultWildcard() { SocketAddress socketAddress = SocketAddressParser.deriveSocketAddress( "setting.name", null, "0.0.0.0", 456, SocketAddress::new ); assertEquals( "0.0.0.0", socketAddress.getHostname() ); assertEquals( 456, socketAddress.getPort() ); assertEquals( "0.0.0.0:456", socketAddress.toString() ); assertTrue( socketAddress.isWildcard() ); }
@Test void shouldSupportDefaultIPv6Wildcard() { SocketAddress socketAddress = SocketAddressParser.deriveSocketAddress( "setting.name", null, "::", 456, SocketAddress::new ); assertEquals( "::", socketAddress.getHostname() ); assertEquals( 456, socketAddress.getPort() ); assertEquals( "[::]:456", socketAddress.toString() ); assertTrue( socketAddress.isWildcard() ); }
@Test void shouldSupportIPv6AddressWithoutBrackets() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "fe80:1:2:3:4::5:123", SocketAddress::new ); assertEquals( "fe80:1:2:3:4::5", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "[fe80:1:2:3:4::5]:123", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldSupportWildcardWithPort() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "0.0.0.0:123", SocketAddress::new ); assertEquals( "0.0.0.0", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "0.0.0.0:123", socketAddress.toString() ); assertTrue( socketAddress.isWildcard() ); }
@Test void shouldSupportIPv6Localhost() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "[::1]:123", SocketAddress::new ); assertEquals( "::1", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "[::1]:123", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldSupportIPv6WildcardWithoutBrackets() { SocketAddress socketAddress = SocketAddressParser.socketAddress( ":::123", SocketAddress::new ); assertEquals( "::", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "[::]:123", socketAddress.toString() ); assertTrue( socketAddress.isWildcard() ); }
@Test void shouldSupportDefaultValue() { SocketAddress socketAddress = SocketAddressParser.deriveSocketAddress( "setting.name", null, "my.domain", 456, SocketAddress::new ); assertEquals( "my.domain", socketAddress.getHostname() ); assertEquals( 456, socketAddress.getPort() ); assertEquals( "my.domain:456", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldSupportDefaultIPv6Value() { SocketAddress socketAddress = SocketAddressParser.deriveSocketAddress( "setting.name", null, "fe80:1:2::4", 456, SocketAddress::new ); assertEquals( "fe80:1:2::4", socketAddress.getHostname() ); assertEquals( 456, socketAddress.getPort() ); assertEquals( "[fe80:1:2::4]:456", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
@Test void shouldSupportIPv6Wildcard() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "[::]:123", SocketAddress::new ); assertEquals( "::", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "[::]:123", socketAddress.toString() ); assertTrue( socketAddress.isWildcard() ); }
@Test void shouldSupportIPv6WithZoneId() { SocketAddress socketAddress = SocketAddressParser.socketAddress( "[fe80::b279:2f%en0]:123", SocketAddress::new ); assertEquals( "fe80::b279:2f%en0", socketAddress.getHostname() ); assertEquals( 123, socketAddress.getPort() ); assertEquals( "[fe80::b279:2f%en0]:123", socketAddress.toString() ); assertFalse( socketAddress.isWildcard() ); }
private <T extends SocketAddress> Object[] buildRow( Pair<T,ProtocolStack> connectionInfo, String orientation ) { T socketAddress = connectionInfo.first(); ProtocolStack protocolStack = connectionInfo.other(); return new Object[] { orientation, socketAddress.toString(), protocolStack.applicationProtocol().category(), (long) protocolStack.applicationProtocol().implementation(), modifierString( protocolStack ) }; }