fix
This commit is contained in:
@@ -20,3 +20,4 @@
|
|||||||
.vscode
|
.vscode
|
||||||
mail_test.go
|
mail_test.go
|
||||||
*_test.go
|
*_test.go
|
||||||
|
!client_test.go
|
||||||
|
|||||||
@@ -196,7 +196,7 @@ func (o *OwnClient) AddClient(instanceFlag string, logger *zap.Logger, instanceC
|
|||||||
clientInfo.Master = o.newClient(instanceConfig.Master)
|
clientInfo.Master = o.newClient(instanceConfig.Master)
|
||||||
}
|
}
|
||||||
if nil != instanceConfig.Slave {
|
if nil != instanceConfig.Slave {
|
||||||
clientInfo.Master = o.newClient(instanceConfig.Slave)
|
clientInfo.Slave = o.newClient(instanceConfig.Slave)
|
||||||
}
|
}
|
||||||
o.lock.Lock()
|
o.lock.Lock()
|
||||||
defer o.lock.Unlock()
|
defer o.lock.Unlock()
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
package redis
|
||||||
|
|
||||||
|
import (
|
||||||
|
"sync"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"git.zhangdeman.cn/zhangdeman/redis/define"
|
||||||
|
"go.uber.org/zap"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestAddClientKeepsMasterAndSlaveSeparate(t *testing.T) {
|
||||||
|
client := &OwnClient{
|
||||||
|
lock: &sync.RWMutex{},
|
||||||
|
instanceTable: map[string]*define.ClientInfo{},
|
||||||
|
whiteCommandTable: map[string]bool{},
|
||||||
|
logger: zap.NewNop(),
|
||||||
|
}
|
||||||
|
err := client.AddClient("main", zap.NewNop(), &define.Config{
|
||||||
|
Master: &define.Options{Addr: "master.example:6379"},
|
||||||
|
Slave: &define.Options{Addr: "slave.example:6379"},
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
info := client.GetRealClient("main")
|
||||||
|
if info.MasterClient() == nil || info.MasterClient().Options().Addr != "master.example:6379" {
|
||||||
|
t.Fatal("master connection was overwritten")
|
||||||
|
}
|
||||||
|
if info.SlaveClient() == nil || info.SlaveClient().Options().Addr != "slave.example:6379" {
|
||||||
|
t.Fatal("slave connection was not retained")
|
||||||
|
}
|
||||||
|
_ = info.MasterClient().Close()
|
||||||
|
_ = info.SlaveClient().Close()
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user