1package proxyproto 2 3import ( 4 "testing" 5) 6 7func TestTCPoverIPv4(t *testing.T) { 8 b := byte(TCPv4) 9 if !AddressFamilyAndProtocol(b).IsIPv4() { 10 t.Fail() 11 } 12 if !AddressFamilyAndProtocol(b).IsStream() { 13 t.Fail() 14 } 15 if AddressFamilyAndProtocol(b).toByte() != b { 16 t.Fail() 17 } 18} 19 20func TestTCPoverIPv6(t *testing.T) { 21 b := byte(TCPv6) 22 if !AddressFamilyAndProtocol(b).IsIPv6() { 23 t.Fail() 24 } 25 if !AddressFamilyAndProtocol(b).IsStream() { 26 t.Fail() 27 } 28 if AddressFamilyAndProtocol(b).toByte() != b { 29 t.Fail() 30 } 31} 32 33func TestUDPoverIPv4(t *testing.T) { 34 b := byte(UDPv4) 35 if !AddressFamilyAndProtocol(b).IsIPv4() { 36 t.Fail() 37 } 38 if !AddressFamilyAndProtocol(b).IsDatagram() { 39 t.Fail() 40 } 41 if AddressFamilyAndProtocol(b).toByte() != b { 42 t.Fail() 43 } 44} 45 46func TestUDPoverIPv6(t *testing.T) { 47 b := byte(UDPv6) 48 if !AddressFamilyAndProtocol(b).IsIPv6() { 49 t.Fail() 50 } 51 if !AddressFamilyAndProtocol(b).IsDatagram() { 52 t.Fail() 53 } 54 if AddressFamilyAndProtocol(b).toByte() != b { 55 t.Fail() 56 } 57} 58 59func TestUnixStream(t *testing.T) { 60 b := byte(UnixStream) 61 if !AddressFamilyAndProtocol(b).IsUnix() { 62 t.Fail() 63 } 64 if !AddressFamilyAndProtocol(b).IsStream() { 65 t.Fail() 66 } 67 if AddressFamilyAndProtocol(b).toByte() != b { 68 t.Fail() 69 } 70} 71 72func TestUnixDatagram(t *testing.T) { 73 b := byte(UnixDatagram) 74 if !AddressFamilyAndProtocol(b).IsUnix() { 75 t.Fail() 76 } 77 if !AddressFamilyAndProtocol(b).IsDatagram() { 78 t.Fail() 79 } 80 if AddressFamilyAndProtocol(b).toByte() != b { 81 t.Fail() 82 } 83} 84 85func TestInvalidAddressFamilyAndProtocol(t *testing.T) { 86 b := byte(UNSPEC) 87 if !AddressFamilyAndProtocol(b).IsUnspec() { 88 t.Fail() 89 } 90 if AddressFamilyAndProtocol(b).toByte() != b { 91 t.Fail() 92 } 93} 94