MCPcopy
hub / github.com/dropbox/godropbox / TestGetMulti

Method TestGetMulti

caching/cache_on_storage_test.go:49–75  ·  view source on GitHub ↗
(c *C)

Source from the content-addressed store, hash-verified

47}
48
49func (s *CacheOnStorageSuite) TestGetMulti(c *C) {
50 s.cache.Set(&testKeyVal{"zzz", 1})
51 s.storage.Set(&testKeyVal{"foo", 10})
52 s.storage.Set(&testKeyVal{"zzz", 123})
53
54 results, err := s.combined.GetMulti("foo", "bar", "zzz")
55 c.Assert(err, IsNil)
56 c.Assert(len(results), Equals, 3)
57
58 // Cache missed
59 c.Assert(results[0].(*testKeyVal).key, Equals, "foo")
60 c.Assert(results[0].(*testKeyVal).val, Equals, 10)
61
62 // Not in either storage
63 c.Assert(results[1], IsNil)
64
65 // Cache hit
66 c.Assert(results[2].(*testKeyVal).key, Equals, "zzz")
67 c.Assert(results[2].(*testKeyVal).val, Equals, 1)
68
69 // foo inserted into cache
70 result, err := s.cache.Get("foo")
71 c.Assert(err, IsNil)
72 c.Assert(result, NotNil)
73 c.Assert(result.(*testKeyVal).key, Equals, "foo")
74 c.Assert(result.(*testKeyVal).val, Equals, 10)
75}
76
77func (s *CacheOnStorageSuite) TestSet(c *C) {
78 s.combined.Set(&testKeyVal{"foo", 123})

Callers

nothing calls this directly

Calls 3

SetMethod · 0.65
GetMultiMethod · 0.65
GetMethod · 0.65

Tested by

no test coverage detected