From affa1dd0a0ba868fefa2060a8a511f3c8c4329d8 Mon Sep 17 00:00:00 2001 From: Joe Turgeon Date: Sun, 25 Dec 2016 18:37:04 -0700 Subject: [PATCH] Generate a random bucket name for backend/b2 e2e tests. --- src/restic/backend/b2/b2_test.go | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/src/restic/backend/b2/b2_test.go b/src/restic/backend/b2/b2_test.go index 9cbbc0893..7e13e7e4b 100644 --- a/src/restic/backend/b2/b2_test.go +++ b/src/restic/backend/b2/b2_test.go @@ -1,13 +1,15 @@ package b2_test import ( + "bytes" + "math/rand" "os" + "time" + "restic" - - "restic/errors" - "restic/backend/b2" "restic/backend/test" + "restic/errors" ) //go:generate go run ../test/generate_backend_tests.go @@ -21,7 +23,7 @@ func init() { cfg := b2.Config{ AccountID: os.Getenv("B2_ACCOUNT_ID"), Key: os.Getenv("B2_ACCOUNT_KEY"), - Bucket: "restic-test", + Bucket: generateBucketName(), Prefix: "test", } @@ -58,3 +60,17 @@ func init() { // return err // } } + +// Generates a random bucket name starting with "restic-test-". +func generateBucketName() string { + const chars = "abcdefghijklmnopqrstuvwxyz0123456789" + const lenChars = len(chars) + const lenBucket = 16 + var bucket bytes.Buffer + bucket.WriteString("restic-test-") + r := rand.New(rand.NewSource(time.Now().UTC().UnixNano())) + for i := 0; i < lenBucket; i++ { + bucket.WriteByte(chars[r.Intn(lenChars)]) + } + return bucket.String() +}