MCPcopy Create free account
hub / github.com/apache/kvrocks-controller / TestController_Basics

Function TestController_Basics

controller/controller_test.go:35–78  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

33)
34
35func TestController_Basics(t *testing.T) {
36 ctx := context.Background()
37 ns := "test-ns"
38 cluster0, err := store.NewCluster("test-cluster-0", []string{"127.0.0.1:7770"}, 1)
39 require.NoError(t, err)
40 cluster1, err := store.NewCluster("test-cluster-1", []string{"127.0.0.1:7771"}, 1)
41 require.NoError(t, err)
42
43 s := store.NewClusterStore(engine.NewMock())
44 require.True(t, s.IsLeader())
45 require.NoError(t, s.CreateCluster(ctx, ns, cluster0))
46 require.NoError(t, s.CreateCluster(ctx, ns, cluster1))
47
48 c, err := New(s, &config.ControllerConfig{
49 FailOver: &config.FailOverConfig{
50 PingIntervalSeconds: 1,
51 },
52 })
53 require.NoError(t, err)
54 require.NoError(t, c.Start(ctx))
55 defer func() {
56 c.Close()
57 }()
58
59 c.WaitForReady()
60
61 t.Run("get cluster", func(t *testing.T) {
62 cluster, err := c.getCluster(ns, "test-cluster-0")
63 require.NoError(t, err)
64 require.NotNil(t, cluster)
65 cluster, err = c.getCluster(ns, "test-cluster-1")
66 require.NoError(t, err)
67 require.NotNil(t, cluster)
68 _, err = c.getCluster(ns, "test-cluster-2")
69 require.ErrorIs(t, err, consts.ErrNotFound)
70 require.NotNil(t, cluster)
71 })
72
73 t.Run("remove cluster", func(t *testing.T) {
74 c.removeCluster(ns, "test-cluster-1")
75 _, err = c.getCluster(ns, "test-cluster-1")
76 require.ErrorIs(t, err, consts.ErrNotFound)
77 })
78}

Callers

nothing calls this directly

Calls 11

IsLeaderMethod · 0.95
CreateClusterMethod · 0.95
NewClusterFunction · 0.92
NewClusterStoreFunction · 0.92
NewMockFunction · 0.92
WaitForReadyMethod · 0.80
getClusterMethod · 0.80
removeClusterMethod · 0.80
NewFunction · 0.70
CloseMethod · 0.65
StartMethod · 0.45

Tested by

no test coverage detected