| Index: go/redisutil/redisutil_test.go
|
| diff --git a/go/redisutil/redisutil_test.go b/go/redisutil/redisutil_test.go
|
| index a7bc84f15222ab56935e2abd568f21d739270dcf..57c3d70bc8a551834d047b154e49e138f88394d0 100644
|
| --- a/go/redisutil/redisutil_test.go
|
| +++ b/go/redisutil/redisutil_test.go
|
| @@ -50,8 +50,8 @@ type TestStruct struct {
|
|
|
| func TestRedisLRUCache(t *testing.T) {
|
| testutils.SkipIfShort(t)
|
| - cache := NewRedisLRUCache("localhost:6379", 1, "test-di", TestStructCodec(0))
|
| - testLRUCache(t, cache)
|
| + cache := NewRedisLRUCache("localhost:6379", 1, "test-di", util.UnitTestCodec())
|
| + util.UnitTestLRUCache(t, cache)
|
| }
|
|
|
| func BenchmarkBigDataset(b *testing.B) {
|
| @@ -147,57 +147,6 @@ func (t TestStructCodec) Decode(data []byte) (interface{}, error) {
|
| return &v, err
|
| }
|
|
|
| -func testLRUCache(t *testing.T, cache util.LRUCache) {
|
| - rlruCache := cache.(*RedisLRUCache)
|
| - rlruCache.Purge()
|
| - N := 256
|
| - for i := 0; i < N; i++ {
|
| - cache.Add(strconv.Itoa(i), i)
|
| - }
|
| -
|
| - // Make sure out keys are correct
|
| - assert.Equal(t, N, cache.Len())
|
| - assert.Equal(t, N, len(rlruCache.Keys()))
|
| - for _, k := range rlruCache.Keys() {
|
| - assert.IsType(t, "", k)
|
| - v, ok := cache.Get(k)
|
| - assert.True(t, ok)
|
| - assert.IsType(t, 0, v)
|
| - assert.Equal(t, k, strconv.Itoa(v.(int)))
|
| - }
|
| -
|
| - for i := 0; i < N; i++ {
|
| - found, ok := cache.Get(strconv.Itoa(i))
|
| - assert.True(t, ok)
|
| - assert.IsType(t, 0, found)
|
| - assert.Equal(t, found.(int), i)
|
| - }
|
| -
|
| - for i := 0; i < N; i++ {
|
| - _, ok := cache.Get(strconv.Itoa(i))
|
| - assert.True(t, ok)
|
| - oldLen := cache.Len()
|
| - cache.Remove(strconv.Itoa(i))
|
| - assert.Equal(t, oldLen-1, cache.Len())
|
| - }
|
| - assert.Equal(t, 0, cache.Len())
|
| -
|
| - // Add some TestStructs to make sure the codec works.
|
| - for i := 0; i < N; i++ {
|
| - strKey := "structkey-" + strconv.Itoa(i)
|
| - ts := &TestStruct{
|
| - PixelDiffFilePath: "somesting-" + strconv.Itoa(i),
|
| - MaxRGBADiffs: []int{i * 4, i*4 + 1, i*4 + 2, i*4 + 3},
|
| - }
|
| - cache.Add(strKey, ts)
|
| - assert.Equal(t, i+1, cache.Len())
|
| - foundTS, ok := cache.Get(strKey)
|
| - assert.True(t, ok)
|
| - assert.IsType(t, &TestStruct{}, foundTS)
|
| - assert.Equal(t, ts, foundTS)
|
| - }
|
| -}
|
| -
|
| type StringCodec struct{}
|
|
|
| func (s StringCodec) Encode(data interface{}) ([]byte, error) {
|
|
|