// Test public interface func doTestStore(t *testing.T, store Store) { … } // Test public interface func doTestIndex(t *testing.T, indexer Indexer) { … } func testStoreKeyFunc(obj interface{ … } func testStoreIndexFunc(obj interface{ … } func testStoreIndexers() Indexers { … } type testStoreObject … func TestCache(t *testing.T) { … } func TestFIFOCache(t *testing.T) { … } func TestUndeltaStore(t *testing.T) { … } func TestIndex(t *testing.T) { … } func TestKeyError(t *testing.T) { … }