internal/screentest: prevent storage client init if gcs buckets is empty

The storage client will cause an error if the caller has not
registered default application credentials for GCP. If the test
only contains local screenshots this should not be necessary.

Change-Id: I3433141cb392f5d3cd8f20aa678330cd948ab15f
Reviewed-on: https://go-review.googlesource.com/c/website/+/442177
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Jamal Carvalho <jamal@golang.org>
Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
Auto-Submit: Jamal Carvalho <jamal@golang.org>
diff --git a/internal/screentest/screentest.go b/internal/screentest/screentest.go
index 0b0d4e9..2a4a24d 100644
--- a/internal/screentest/screentest.go
+++ b/internal/screentest/screentest.go
@@ -310,6 +310,9 @@
 // cleanBkts clears all the GCS buckets in bkts of all objects not included
 // in the set of keepFiles. Buckets that do not exist will cause an error.
 func cleanBkts(ctx context.Context, bkts, keepFiles, safeExts map[string]bool) error {
+	if len(bkts) == 0 {
+		return nil
+	}
 	client, err := storage.NewClient(ctx)
 	if err != nil {
 		return fmt.Errorf("storage.NewClient(ctx): %w", err)