MCPcopy Create free account
hub / github.com/IceFireDB/IceFireDB / testDiff

Function testDiff

set_test.go:240–298  ·  view source on GitHub ↗
(db *redis.Client, t *testing.T)

Source from the content-addressed store, hash-verified

238}
239
240func testDiff(db *redis.Client, t *testing.T) {
241 ctx := context.Background()
242 key0 := "testdb_set_diff_0"
243 key1 := "testdb_set_diff_1"
244 key2 := "testdb_set_diff_2"
245 key3 := "testdb_set_diff_3"
246
247 m1 := "m1"
248 m2 := "m2"
249 m3 := "m3"
250 m4 := "m4"
251
252 db.SAdd(ctx, key1, m1, m2)
253 db.SAdd(ctx, key2, m2, m3, m4)
254 db.SAdd(ctx, key3, m3)
255
256 if v, err := db.SDiff(ctx, key1, key2).Result(); err != nil {
257 t.Fatal(err)
258 } else if len(v) != 1 {
259 t.Fatal(v)
260 }
261
262 dstKey := "diff_dsk"
263 if n, err := db.SDiffStore(ctx, dstKey, key1, key2).Result(); err != nil {
264 t.Fatal(err)
265 } else if n != 1 {
266 t.Fatal(n)
267 }
268
269 if v, err := db.SDiff(ctx, key2, key1).Result(); err != nil {
270 t.Fatal(err)
271 } else if len(v) != 2 {
272 t.Fatal(v)
273 }
274
275 if v, err := db.SDiff(ctx, key1, key2, key3).Result(); err != nil {
276 t.Fatal(err)
277 } else if len(v) != 1 {
278 t.Fatal(v) // return 1
279 }
280
281 if v, err := db.SDiff(ctx, key2, key2).Result(); err != nil {
282 t.Fatal(err)
283 } else if len(v) != 0 {
284 t.Fatal(v)
285 }
286
287 if v, err := db.SDiff(ctx, key0, key1).Result(); err != nil {
288 t.Fatal(err)
289 } else if len(v) != 0 {
290 t.Fatal(v)
291 }
292
293 if v, err := db.SDiff(ctx, key1, key0).Result(); err != nil {
294 t.Fatal(err)
295 } else if len(v) != 2 {
296 t.Fatal(v)
297 }

Callers 1

TestSetOperationFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected