MCPcopy Create free account
hub / github.com/ByteStorage/FlyDB / TestZAdds

Function TestZAdds

structure/zset_test.go:276–334  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

274 }
275}
276func TestZAdds(t *testing.T) {
277 zs, _ := initZSetDB()
278
279 // 1. Test for Key is Empty
280 err := zs.ZAdds("", []ZSetValue{}...)
281 require.Error(t, err)
282 require.Equal(t, _const.ErrKeyIsEmpty, err)
283 type testCase struct {
284 key string
285 input []ZSetValue
286 want []ZSetValue
287 err error
288 }
289
290 testCases := []testCase{
291 {"key",
292 []ZSetValue{
293 {score: 0, member: "mem0", value: ""},
294 {score: 1, member: "mem1", value: ""},
295 {score: 2, member: "mem2", value: ""},
296 {score: 3, member: "mem3", value: ""},
297 {score: 3, member: "mem3", value: ""},
298 {score: 4, member: "mem4", value: ""},
299 {score: 5, member: "mem5", value: ""},
300 {score: 6, member: "mem6", value: ""},
301 },
302 []ZSetValue{
303 {score: 0, member: "mem0", value: ""},
304 {score: 1, member: "mem1", value: ""},
305 {score: 2, member: "mem2", value: ""},
306 {score: 3, member: "mem3", value: ""},
307 {score: 3, member: "mem3", value: ""},
308 {score: 4, member: "mem4", value: ""},
309 {score: 5, member: "mem5", value: ""},
310 {score: 6, member: "mem6", value: ""},
311 },
312 nil},
313 {"",
314 []ZSetValue{
315 {score: 0, member: "mem0", value: ""},
316 {score: 1, member: "mem1", value: ""},
317 },
318 []ZSetValue{},
319 _const.ErrKeyIsEmpty,
320 },
321 }
322
323 for _, tc := range testCases {
324 t.Run(tc.key, func(t *testing.T) {
325 err = zs.ZAdds(tc.key, tc.input...)
326 assert.Equal(t, tc.err, err)
327 //validate
328 for _, value := range tc.want {
329 te := zs.exists(tc.key, value.score, value.member)
330 assert.True(t, te)
331 }
332 })
333 }

Callers

nothing calls this directly

Calls 3

initZSetDBFunction · 0.85
ZAddsMethod · 0.65
existsMethod · 0.45

Tested by

no test coverage detected