mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
Merge pull request #723 from unihorn/63
tests: add TestJoinThroughFollower
This commit is contained in:
commit
b742af56ec
39
tests/functional/join_test.go
Normal file
39
tests/functional/join_test.go
Normal file
@ -0,0 +1,39 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestJoinThroughFollower(t *testing.T) {
|
||||
procAttr := new(os.ProcAttr)
|
||||
procAttr.Files = []*os.File{nil, os.Stdout, os.Stderr}
|
||||
|
||||
_, etcds, err := CreateCluster(2, procAttr, false)
|
||||
if err != nil {
|
||||
t.Fatal("cannot create cluster")
|
||||
}
|
||||
defer DestroyCluster(etcds)
|
||||
|
||||
time.Sleep(time.Second)
|
||||
|
||||
newEtcd, err := os.StartProcess(EtcdBinPath, []string{"etcd", "-data-dir=/tmp/node3", "-name=node3", "-addr=127.0.0.1:4003", "-peer-addr=127.0.0.1:7003", "-peers=127.0.0.1:7002", "-f"}, procAttr)
|
||||
if err != nil {
|
||||
t.Fatal("failed starting node3")
|
||||
}
|
||||
defer func() {
|
||||
newEtcd.Kill()
|
||||
newEtcd.Release()
|
||||
}()
|
||||
|
||||
time.Sleep(time.Second)
|
||||
|
||||
leader, err := getLeader("http://127.0.0.1:4003")
|
||||
if err != nil {
|
||||
t.Fatal("failed getting leader from node3:", err)
|
||||
}
|
||||
if leader != "http://127.0.0.1:7001" {
|
||||
t.Fatal("expect=http://127.0.0.1:7001 got=", leader)
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user