MCPcopy Create free account
hub / github.com/dbProjectRED/redimo.go / TestAtomicHashOps

Function TestAtomicHashOps

hashes_test.go:83–114  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

81}
82
83func TestAtomicHashOps(t *testing.T) {
84 c := newClient(t)
85 err := c.HMSET("k1", map[string]Value{"f1": StringValue{"v1"}, "f2": StringValue{"v2"}})
86 assert.NoError(t, err)
87
88 val, err := c.HGET("k1", "f1")
89 assert.NoError(t, err)
90 assert.Equal(t, "v1", val.String())
91
92 val, err = c.HGET("k1", "f2")
93 assert.NoError(t, err)
94 assert.Equal(t, "v2", val.String())
95
96 values, err := c.HMGET("k1", "f1", "f2", "nonexistent")
97 assert.NoError(t, err)
98 assert.Len(t, values, 3)
99 assert.Equal(t, "v1", values["f1"].String())
100 assert.Equal(t, "v2", values["f2"].String())
101 assert.False(t, values["nonexistent"].Present())
102
103 ok, err := c.HSETNX("k1", "f1", StringValue{"v1"})
104 assert.NoError(t, err)
105 assert.False(t, ok)
106
107 ok, err = c.HSETNX("k1", "f9", StringValue{"v9"})
108 assert.NoError(t, err)
109 assert.True(t, ok)
110
111 val, err = c.HGET("k1", "f9")
112 assert.NoError(t, err)
113 assert.Equal(t, "v9", val.String())
114}
115
116func TestHashCounters(t *testing.T) {
117 c := newClient(t)

Callers

nothing calls this directly

Calls 7

newClientFunction · 0.85
HMSETMethod · 0.80
HGETMethod · 0.80
HMGETMethod · 0.80
PresentMethod · 0.80
HSETNXMethod · 0.80
StringMethod · 0.45

Tested by

no test coverage detected