1234567891011121314151617181920212223242526272829303132333435363738 |
- package discov
- import (
- "sync"
- "testing"
- "git.i2edu.net/i2/go-zero/core/discov/internal"
- "github.com/stretchr/testify/assert"
- )
- var mockLock sync.Mutex
- func setMockClient(cli internal.EtcdClient) func() {
- mockLock.Lock()
- internal.NewClient = func([]string) (internal.EtcdClient, error) {
- return cli, nil
- }
- return func() {
- internal.NewClient = internal.DialClient
- mockLock.Unlock()
- }
- }
- func TestExtract(t *testing.T) {
- id, ok := extractId("key/123/val")
- assert.True(t, ok)
- assert.Equal(t, "123", id)
- _, ok = extract("any", -1)
- assert.False(t, ok)
- _, ok = extract("any", 10)
- assert.False(t, ok)
- }
- func TestMakeKey(t *testing.T) {
- assert.Equal(t, "key/123", makeEtcdKey("key", 123))
- }
|