MCPcopy
hub / github.com/cubefs/cubefs / TestNewBlobNodeClient

Function TestNewBlobNodeClient

blobstore/api/blobnode/client_test.go:32–156  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

30)
31
32func TestNewBlobNodeClient(t *testing.T) {
33 span, ctx := trace.StartSpanFromContextWithTraceID(context.Background(), "", "NewBlobNodeService")
34
35 mockServer := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
36 if req.Header.Get("X-Crc-Encoded") != "" {
37 w.Header().Set("X-Ack-Crc-Encoded", "1")
38 }
39 w.WriteHeader(http.StatusOK)
40 }))
41
42 cfg := &Config{}
43
44 cli := New(cfg)
45
46 diskid := proto.DiskID(100002)
47
48 stat, err := cli.Stat(ctx, mockServer.URL)
49 require.NoError(t, err)
50 span.Infof("stat: %v\n", stat)
51
52 diskStatArgs := &DiskStatArgs{
53 DiskID: diskid,
54 }
55 diskInfo, err := cli.DiskInfo(ctx, mockServer.URL, diskStatArgs)
56 require.NoError(t, err)
57 span.Infof("disk info: %v\n", diskInfo)
58
59 creteChunkArgs := &CreateChunkArgs{
60 DiskID: diskid,
61 Vuid: 20001,
62 }
63 err = cli.CreateChunk(ctx, mockServer.URL, creteChunkArgs)
64 require.NoError(t, err)
65
66 changeChunkArgs := &ChangeChunkStatusArgs{
67 DiskID: diskid,
68 Vuid: 20002,
69 }
70 err = cli.ReleaseChunk(ctx, mockServer.URL, changeChunkArgs)
71 require.NoError(t, err)
72
73 changeChunkArgs.Vuid = 20003
74 err = cli.SetChunkReadonly(ctx, mockServer.URL, changeChunkArgs)
75 require.NoError(t, err)
76
77 changeChunkArgs.Vuid = 20004
78 err = cli.SetChunkReadwrite(ctx, mockServer.URL, changeChunkArgs)
79 require.NoError(t, err)
80
81 listChunkArgs := &ListChunkArgs{
82 DiskID: diskid,
83 }
84 chunks, err := cli.ListChunks(ctx, mockServer.URL, listChunkArgs)
85 require.NoError(t, err)
86 span.Infof("chunks: %v\n", chunks)
87
88 databytes := []byte("test context")
89 putShardArgs := &PutShardArgs{

Callers

nothing calls this directly

Calls 15

DiskIDTypeAlias · 0.92
NewReaderMethod · 0.80
NewFunction · 0.70
GetMethod · 0.65
SetMethod · 0.65
StatMethod · 0.65
InfofMethod · 0.65
DiskInfoMethod · 0.65
CreateChunkMethod · 0.65
ReleaseChunkMethod · 0.65
SetChunkReadonlyMethod · 0.65

Tested by

no test coverage detected