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

Function TestHashStructure_GetFields

structure/hash_test.go:522–572  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

520}
521
522func TestHashStructure_GetFields(t *testing.T) {
523 hash, _ := initHashDB()
524 defer hash.db.Clean()
525
526 ok1, err := hash.HSet("qqqqqq", "!qqq!1", "11111")
527 assert.Nil(t, err)
528 assert.True(t, ok1)
529
530 ok2, err := hash.HSet("qqqqqq", "!qqq!2", "22222")
531 assert.Nil(t, err)
532 assert.True(t, ok2)
533
534 ok3, err := hash.HSet("qqqqqq", "!qqq!3", "33333")
535 assert.Nil(t, err)
536 assert.True(t, ok3)
537
538 ok11, err := hash.HSet("qweqwe", "!aaa!1", "11111")
539 assert.Nil(t, err)
540 assert.True(t, ok11)
541
542 ok22, err := hash.HSet("qweqwe", "!aaa!2", "22222")
543 assert.Nil(t, err)
544 assert.True(t, ok22)
545
546 ok33, err := hash.HSet("qweqwe", "!aaa!3", "33333")
547 assert.Nil(t, err)
548 assert.True(t, ok33)
549
550 fields1 := hash.GetFields("qweqwe")
551 assert.Equal(t, fields1, []string{"!aaa!1", "!aaa!2", "!aaa!3"})
552
553 fields2 := hash.GetFields("qqqqqq")
554 assert.Equal(t, fields2, []string{"!qqq!1", "!qqq!2", "!qqq!3"})
555
556 keys, err := hash.Keys("*")
557 assert.Nil(t, err)
558 assert.Equal(t, keys, []string{"qqqqqq", "qweqwe"})
559
560 keys, err = hash.Keys("q*")
561 assert.Nil(t, err)
562 assert.Equal(t, keys, []string{"qqqqqq", "qweqwe"})
563
564 keys, err = hash.Keys("qq*")
565 assert.Nil(t, err)
566 assert.Equal(t, keys, []string{"qqqqqq"})
567
568 keys, err = hash.Keys("q?*")
569 assert.Nil(t, err)
570 assert.Equal(t, keys, []string{"qqqqqq", "qweqwe"})
571
572}
573
574func TestHashStructure_HGetAllFieldAndValue(t *testing.T) {
575 hash, _ := initHashDB()

Callers

nothing calls this directly

Calls 5

initHashDBFunction · 0.85
GetFieldsMethod · 0.80
HSetMethod · 0.65
KeysMethod · 0.65
CleanMethod · 0.45

Tested by

no test coverage detected