github.com/pachyderm/pachyderm@v1.13.4/src/client/pkg/grpcutil/addr_test.go (about) 1 package grpcutil 2 3 import ( 4 "testing" 5 6 "github.com/pachyderm/pachyderm/src/client/pkg/errors" 7 "github.com/pachyderm/pachyderm/src/client/pkg/require" 8 ) 9 10 func TestParsePachdAddress(t *testing.T) { 11 _, err := ParsePachdAddress("") 12 require.True(t, errors.Is(err, ErrNoPachdAddress)) 13 14 _, err = ParsePachdAddress("grpc://user@pachyderm.com:80") 15 require.YesError(t, err) 16 17 _, err = ParsePachdAddress("grpc://user:pass@pachyderm.com:80") 18 require.YesError(t, err) 19 20 _, err = ParsePachdAddress("grpc://pachyderm.com:80/") 21 require.YesError(t, err) 22 23 _, err = ParsePachdAddress("grpc://pachyderm.com:80/?foo") 24 require.YesError(t, err) 25 26 _, err = ParsePachdAddress("grpc://pachyderm.com:80/#foo") 27 require.YesError(t, err) 28 29 p, err := ParsePachdAddress("http://pachyderm.com:80") 30 require.NoError(t, err) 31 require.Equal(t, &PachdAddress{ 32 Secured: false, 33 Host: "pachyderm.com", 34 Port: 80, 35 }, p) 36 37 p, err = ParsePachdAddress("https://pachyderm.com:80") 38 require.NoError(t, err) 39 require.Equal(t, &PachdAddress{ 40 Secured: true, 41 Host: "pachyderm.com", 42 Port: 80, 43 }, p) 44 45 p, err = ParsePachdAddress("grpc://pachyderm.com:80") 46 require.NoError(t, err) 47 require.Equal(t, &PachdAddress{ 48 Secured: false, 49 Host: "pachyderm.com", 50 Port: 80, 51 }, p) 52 53 p, err = ParsePachdAddress("grpcs://[::1]:80") 54 require.NoError(t, err) 55 require.Equal(t, &PachdAddress{ 56 Secured: true, 57 Host: "::1", 58 Port: 80, 59 }, p) 60 61 p, err = ParsePachdAddress("grpc://pachyderm.com") 62 require.NoError(t, err) 63 require.Equal(t, &PachdAddress{ 64 Secured: false, 65 Host: "pachyderm.com", 66 Port: DefaultPachdNodePort, 67 }, p) 68 69 p, err = ParsePachdAddress("127.0.0.1") 70 require.NoError(t, err) 71 require.Equal(t, &PachdAddress{ 72 Secured: false, 73 Host: "127.0.0.1", 74 Port: DefaultPachdNodePort, 75 }, p) 76 77 p, err = ParsePachdAddress("127.0.0.1:80") 78 require.NoError(t, err) 79 require.Equal(t, &PachdAddress{ 80 Secured: false, 81 Host: "127.0.0.1", 82 Port: 80, 83 }, p) 84 85 p, err = ParsePachdAddress("[::1]") 86 require.NoError(t, err) 87 require.Equal(t, &PachdAddress{ 88 Secured: false, 89 Host: "::1", 90 Port: DefaultPachdNodePort, 91 }, p) 92 93 p, err = ParsePachdAddress("[::1]:80") 94 require.NoError(t, err) 95 require.Equal(t, &PachdAddress{ 96 Secured: false, 97 Host: "::1", 98 Port: 80, 99 }, p) 100 } 101 102 func TestPachdAddressQualified(t *testing.T) { 103 p := &PachdAddress{ 104 Secured: false, 105 Host: "pachyderm.com", 106 Port: DefaultPachdNodePort, 107 } 108 109 require.Equal(t, "grpc://pachyderm.com:30650", p.Qualified()) 110 p = &PachdAddress{ 111 Secured: true, 112 Host: "pachyderm.com", 113 Port: DefaultPachdNodePort, 114 } 115 require.Equal(t, "grpcs://pachyderm.com:30650", p.Qualified()) 116 } 117 118 func TestPachdAddressHostname(t *testing.T) { 119 p := &PachdAddress{ 120 Secured: false, 121 Host: "pachyderm.com", 122 Port: DefaultPachdNodePort, 123 } 124 require.Equal(t, "pachyderm.com:30650", p.Hostname()) 125 126 p = &PachdAddress{ 127 Secured: true, 128 Host: "pachyderm.com", 129 Port: DefaultPachdNodePort, 130 } 131 require.Equal(t, "pachyderm.com:30650", p.Hostname()) 132 }