From 6acb3a0d7e02c197d9e17d8bb2556022b86e945a Mon Sep 17 00:00:00 2001 From: Aaron Lehmann Date: Thu, 24 Sep 2015 18:22:23 -0700 Subject: [PATCH] Avoid importing "testing" in externally-facing code The "testing" package adds some flags in its init function, so utilities that import distribution code may print a page of extra testing flags in their help output. This commit solves the issue by moving an import of "testing" in the registry/storage/cache package to a new registry/storage/cache/cachecheck package, which is only imported by tests. Signed-off-by: Aaron Lehmann --- registry/storage/cache/{ => cachecheck}/suite.go | 11 ++++++----- registry/storage/cache/memory/memory_test.go | 4 ++-- registry/storage/cache/redis/redis_test.go | 4 ++-- 3 files changed, 10 insertions(+), 9 deletions(-) rename registry/storage/cache/{ => cachecheck}/suite.go (93%) diff --git a/registry/storage/cache/suite.go b/registry/storage/cache/cachecheck/suite.go similarity index 93% rename from registry/storage/cache/suite.go rename to registry/storage/cache/cachecheck/suite.go index b5a2f6431..ed0f95fd9 100644 --- a/registry/storage/cache/suite.go +++ b/registry/storage/cache/cachecheck/suite.go @@ -1,4 +1,4 @@ -package cache +package cachecheck import ( "testing" @@ -6,19 +6,20 @@ import ( "github.com/docker/distribution" "github.com/docker/distribution/context" "github.com/docker/distribution/digest" + "github.com/docker/distribution/registry/storage/cache" ) // CheckBlobDescriptorCache takes a cache implementation through a common set // of operations. If adding new tests, please add them here so new // implementations get the benefit. This should be used for unit tests. -func CheckBlobDescriptorCache(t *testing.T, provider BlobDescriptorCacheProvider) { +func CheckBlobDescriptorCache(t *testing.T, provider cache.BlobDescriptorCacheProvider) { ctx := context.Background() checkBlobDescriptorCacheEmptyRepository(t, ctx, provider) checkBlobDescriptorCacheSetAndRead(t, ctx, provider) } -func checkBlobDescriptorCacheEmptyRepository(t *testing.T, ctx context.Context, provider BlobDescriptorCacheProvider) { +func checkBlobDescriptorCacheEmptyRepository(t *testing.T, ctx context.Context, provider cache.BlobDescriptorCacheProvider) { if _, err := provider.Stat(ctx, "sha384:abc"); err != distribution.ErrBlobUnknown { t.Fatalf("expected unknown blob error with empty store: %v", err) } @@ -56,7 +57,7 @@ func checkBlobDescriptorCacheEmptyRepository(t *testing.T, ctx context.Context, } } -func checkBlobDescriptorCacheSetAndRead(t *testing.T, ctx context.Context, provider BlobDescriptorCacheProvider) { +func checkBlobDescriptorCacheSetAndRead(t *testing.T, ctx context.Context, provider cache.BlobDescriptorCacheProvider) { localDigest := digest.Digest("sha384:abc") expected := distribution.Descriptor{ Digest: "sha256:abc", @@ -140,7 +141,7 @@ func checkBlobDescriptorCacheSetAndRead(t *testing.T, ctx context.Context, provi } } -func checkBlobDescriptorClear(t *testing.T, ctx context.Context, provider BlobDescriptorCacheProvider) { +func checkBlobDescriptorClear(t *testing.T, ctx context.Context, provider cache.BlobDescriptorCacheProvider) { localDigest := digest.Digest("sha384:abc") expected := distribution.Descriptor{ Digest: "sha256:abc", diff --git a/registry/storage/cache/memory/memory_test.go b/registry/storage/cache/memory/memory_test.go index 3bae7ccb3..49c2b5c39 100644 --- a/registry/storage/cache/memory/memory_test.go +++ b/registry/storage/cache/memory/memory_test.go @@ -3,11 +3,11 @@ package memory import ( "testing" - "github.com/docker/distribution/registry/storage/cache" + "github.com/docker/distribution/registry/storage/cache/cachecheck" ) // TestInMemoryBlobInfoCache checks the in memory implementation is working // correctly. func TestInMemoryBlobInfoCache(t *testing.T) { - cache.CheckBlobDescriptorCache(t, NewInMemoryBlobDescriptorCacheProvider()) + cachecheck.CheckBlobDescriptorCache(t, NewInMemoryBlobDescriptorCacheProvider()) } diff --git a/registry/storage/cache/redis/redis_test.go b/registry/storage/cache/redis/redis_test.go index ed6944a17..81bcaddd9 100644 --- a/registry/storage/cache/redis/redis_test.go +++ b/registry/storage/cache/redis/redis_test.go @@ -6,7 +6,7 @@ import ( "testing" "time" - "github.com/docker/distribution/registry/storage/cache" + "github.com/docker/distribution/registry/storage/cache/cachecheck" "github.com/garyburd/redigo/redis" ) @@ -47,5 +47,5 @@ func TestRedisBlobDescriptorCacheProvider(t *testing.T) { t.Fatalf("unexpected error flushing redis db: %v", err) } - cache.CheckBlobDescriptorCache(t, NewRedisBlobDescriptorCacheProvider(pool)) + cachecheck.CheckBlobDescriptorCache(t, NewRedisBlobDescriptorCacheProvider(pool)) }