MCPcopy
hub / github.com/olric-data/olric / TestDMap_Get_GetResponse

Function TestDMap_Get_GetResponse

get_response_test.go:30–371  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

28)
29
30func TestDMap_Get_GetResponse(t *testing.T) {
31 cluster := testcluster.New(dmap.NewService)
32 s := cluster.AddMember(nil).(*dmap.Service)
33 defer cluster.Shutdown()
34
35 ctx := context.Background()
36 dm, err := s.NewDMap("mydmap")
37 require.NoError(t, err)
38
39 t.Run("Scan", func(t *testing.T) {
40 var value = 100
41 err = dm.Put(ctx, "mykey-scan", value, nil)
42 require.NoError(t, err)
43
44 e, err := dm.Get(ctx, "mykey-scan")
45 require.NoError(t, err)
46
47 gr := &GetResponse{entry: e}
48 scannedValue := new(int)
49 err = gr.Scan(scannedValue)
50 require.NoError(t, err)
51 require.Equal(t, value, *scannedValue)
52 })
53
54 t.Run("Byte", func(t *testing.T) {
55 var value = []byte("olric")
56 err = dm.Put(ctx, "mykey-byte", value, nil)
57 require.NoError(t, err)
58
59 e, err := dm.Get(ctx, "mykey-byte")
60 require.NoError(t, err)
61
62 gr := &GetResponse{entry: e}
63 scannedValue, err := gr.Byte()
64 require.NoError(t, err)
65 require.Equal(t, value, scannedValue)
66 })
67
68 t.Run("TTL", func(t *testing.T) {
69 var value = []byte("olric")
70 err = dm.Put(ctx, "mykey-byte", value, &dmap.PutConfig{
71 HasEX: true,
72 EX: time.Second,
73 })
74 require.NoError(t, err)
75
76 e, err := dm.Get(ctx, "mykey-byte")
77 require.NoError(t, err)
78
79 gr := &GetResponse{entry: e}
80 ttl := gr.TTL()
81 require.Greater(t, ttl, int64(0))
82 })
83
84 t.Run("Timestamp", func(t *testing.T) {
85 var value = []byte("olric")
86 err = dm.Put(ctx, "mykey-byte", value, nil)
87 require.NoError(t, err)

Callers

nothing calls this directly

Calls 15

PutMethod · 0.95
GetMethod · 0.95
ScanMethod · 0.95
ByteMethod · 0.95
TTLMethod · 0.95
TimestampMethod · 0.95
IntMethod · 0.95
StringMethod · 0.95
Int8Method · 0.95
Int16Method · 0.95
Int32Method · 0.95
Int64Method · 0.95

Tested by

no test coverage detected