12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- package internal
- import (
- "fmt"
- "net/url"
- "strings"
- "testing"
- "github.com/stretchr/testify/assert"
- "go.etcd.io/etcd/client/v3/mock/mockserver"
- "google.golang.org/grpc/resolver"
- "google.golang.org/grpc/serviceconfig"
- )
- func TestDiscovBuilder_Scheme(t *testing.T) {
- var b discovBuilder
- assert.Equal(t, DiscovScheme, b.Scheme())
- }
- func TestDiscovBuilder_Build(t *testing.T) {
- servers, err := mockserver.StartMockServers(2)
- assert.NoError(t, err)
- t.Cleanup(func() {
- servers.Stop()
- })
- var addrs []string
- for _, server := range servers.Servers {
- addrs = append(addrs, server.Address)
- }
- u, err := url.Parse(fmt.Sprintf("%s://%s", DiscovScheme, strings.Join(addrs, ",")))
- assert.NoError(t, err)
- var b discovBuilder
- _, err = b.Build(resolver.Target{
- URL: *u,
- }, mockClientConn{}, resolver.BuildOptions{})
- assert.Error(t, err)
- }
- type mockClientConn struct{}
- func (m mockClientConn) UpdateState(_ resolver.State) error {
- return nil
- }
- func (m mockClientConn) ReportError(_ error) {
- }
- func (m mockClientConn) NewAddress(_ []resolver.Address) {
- }
- func (m mockClientConn) NewServiceConfig(_ string) {
- }
- func (m mockClientConn) ParseServiceConfig(_ string) *serviceconfig.ParseResult {
- return nil
- }
|