(t *testing.T)
| 156 | } |
| 157 | |
| 158 | func TestFinalAdvertiseAddr(t *testing.T) { |
| 159 | tests := map[string]struct { |
| 160 | advertiseAddr string |
| 161 | bindAddrs []string |
| 162 | bindPort int |
| 163 | }{ |
| 164 | "should not fail with local address specified": { |
| 165 | advertiseAddr: "127.0.0.1", |
| 166 | bindAddrs: []string{"127.0.0.1"}, |
| 167 | bindPort: 0, |
| 168 | }, |
| 169 | } |
| 170 | |
| 171 | for testName, testData := range tests { |
| 172 | t.Run(testName, func(t *testing.T) { |
| 173 | logs := &concurrency.SyncBuffer{} |
| 174 | logger := log.NewLogfmtLogger(logs) |
| 175 | |
| 176 | cfg := TCPTransportConfig{} |
| 177 | flagext.DefaultValues(&cfg) |
| 178 | cfg.BindAddrs = testData.bindAddrs |
| 179 | cfg.BindPort = testData.bindPort |
| 180 | |
| 181 | transport, err := NewTCPTransport(cfg, logger, prometheus.NewPedanticRegistry()) |
| 182 | require.NoError(t, err) |
| 183 | |
| 184 | ip, port, err := transport.FinalAdvertiseAddr(testData.advertiseAddr, testData.bindPort) |
| 185 | require.NoError(t, err) |
| 186 | require.Equal(t, testData.advertiseAddr, ip.String()) |
| 187 | require.Equal(t, testData.bindPort, port) |
| 188 | |
| 189 | }) |
| 190 | } |
| 191 | } |
| 192 | |
| 193 | func TestNonIPsAreRejected(t *testing.T) { |
| 194 | cfg := TCPTransportConfig{BindAddrs: flagext.StringSlice{"localhost"}} |
nothing calls this directly
no test coverage detected