MCPcopy Create free account
hub / github.com/nutsdb/nutsdb / TestSet_SCard

Function TestSet_SCard

internal/data/set_test.go:115–153  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

113}
114
115func TestSet_SCard(t *testing.T) {
116 set := NewSet()
117
118 key1 := "set1"
119 key2 := "set2"
120 key3 := "set3"
121 key4 := "set4"
122
123 expectRecords := testutils.GenerateRecords(10)
124
125 values := make([][]byte, 10)
126 for i := range expectRecords {
127 values[i] = expectRecords[i].Value
128 }
129
130 require.NoError(t, set.SAdd(key1, values[:5], expectRecords[:5]))
131 require.NoError(t, set.SAdd(key2, values[2:6], expectRecords[2:6]))
132 require.NoError(t, set.SAdd(key3, values[2:7], expectRecords[2:7]))
133 require.NoError(t, set.SAdd(key4, values[7:], expectRecords[7:]))
134
135 tests := []struct {
136 name string
137 key string
138 set *Set
139 want int
140 }{
141 {"normal set", key1, set, 5},
142 {"normal set", key2, set, 4},
143 {"normal set", key3, set, 5},
144 {"fake key", "key_fake", set, 0},
145 }
146
147 for _, tt := range tests {
148 t.Run(tt.name, func(t *testing.T) {
149 got := tt.set.SCard(tt.key)
150 require.Equalf(t, tt.want, got, "TestSet_SCard err")
151 })
152 }
153}
154
155func TestSet_SInter(t *testing.T) {
156 set := NewSet()

Callers

nothing calls this directly

Calls 5

SAddMethod · 0.95
GenerateRecordsFunction · 0.92
NewSetFunction · 0.85
RunMethod · 0.80
SCardMethod · 0.45

Tested by

no test coverage detected