Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
perfect the test case for 'discoveryOpts'
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
... | ... |
@@ -81,8 +81,7 @@ func discoveryOpts(clusterOpts map[string]string) (time.Duration, time.Duration, |
81 | 81 |
ttl = time.Duration(t) * time.Second |
82 | 82 |
|
83 | 83 |
if _, ok := clusterOpts["discovery.heartbeat"]; !ok { |
84 |
- h := int(t / defaultDiscoveryTTLFactor) |
|
85 |
- heartbeat = time.Duration(h) * time.Second |
|
84 |
+ heartbeat = time.Duration(t) * time.Second / time.Duration(defaultDiscoveryTTLFactor) |
|
86 | 85 |
} |
87 | 86 |
|
88 | 87 |
if ttl <= heartbeat { |
... | ... |
@@ -1,6 +1,7 @@ |
1 | 1 |
package discovery |
2 | 2 |
|
3 | 3 |
import ( |
4 |
+ "fmt" |
|
4 | 5 |
"testing" |
5 | 6 |
"time" |
6 | 7 |
) |
... | ... |
@@ -86,6 +87,13 @@ func TestDiscoveryOpts(t *testing.T) { |
86 | 86 |
t.Fatalf("Heartbeat - Expected : %v, Actual : %v", expected, heartbeat) |
87 | 87 |
} |
88 | 88 |
|
89 |
+ discaveryTTL := fmt.Sprintf("%d", defaultDiscoveryTTLFactor-1) |
|
90 |
+ clusterOpts = map[string]string{"discovery.ttl": discaveryTTL} |
|
91 |
+ heartbeat, ttl, err = discoveryOpts(clusterOpts) |
|
92 |
+ if err == nil && heartbeat == 0 { |
|
93 |
+ t.Fatal("discovery.heartbeat must be positive") |
|
94 |
+ } |
|
95 |
+ |
|
89 | 96 |
clusterOpts = map[string]string{} |
90 | 97 |
heartbeat, ttl, err = discoveryOpts(clusterOpts) |
91 | 98 |
if err != nil { |