MCPcopy
hub / github.com/cubefs/cubefs / TestDataNode

Function TestDataNode

master/data_node_test.go:12–38  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

10)
11
12func TestDataNode(t *testing.T) {
13 // /dataNode/add and /dataNode/response processed by mock data server
14 var err error
15 addr := "127.0.0.1:9096"
16 func() {
17 mockServerLock.Lock()
18 defer mockServerLock.Unlock()
19 mockDataServers = append(mockDataServers, addDataServer(addr, DefaultZoneName, defaultMediaType))
20 }()
21 server.cluster.checkDataNodeHeartbeat()
22 time.Sleep(5 * time.Second)
23 getDataNodeInfo(addr, t)
24 updateDisks(addr, t)
25 decommissionDataNode(addr, t)
26 for i := 0; i < 10; i++ { // decommission is async process
27 _, err = server.cluster.dataNode(addr)
28 if err == nil {
29 time.Sleep(time.Second)
30 continue
31 }
32 break
33 }
34 if err != nil {
35 t.Errorf("decommission datanode [%v] failed", addr)
36 }
37 server.cluster.dataNodes.Delete(addr)
38}
39
40func getDataNodeInfo(addr string, t *testing.T) {
41 reqURL := fmt.Sprintf("%v%v?addr=%v", hostAddr, proto.GetDataNode, addr)

Callers

nothing calls this directly

Calls 10

addDataServerFunction · 0.85
getDataNodeInfoFunction · 0.85
updateDisksFunction · 0.85
decommissionDataNodeFunction · 0.85
LockMethod · 0.80
dataNodeMethod · 0.80
ErrorfMethod · 0.65
DeleteMethod · 0.65
UnlockMethod · 0.45

Tested by

no test coverage detected