// Start starts server used for MockS3 func (s *MockS3) Start(t *testing.T) { srv, err := s3test.NewServer(s.config) ensure.Nil(t, err) ensure.NotNil(t, srv) s.srv = srv s.region = aws.Region{ Name: "faux-region-1", S3Endpoint: srv.URL(), S3LocationConstraint: true, // s3test server requires a LocationConstraint } }
func (s *LocalServer) SetUp(c *check.C) { srv, err := s3test.NewServer(s.config) c.Assert(err, check.IsNil) c.Assert(srv, check.NotNil) s.srv = srv s.region = aws.Region{ Name: "faux-region-1", S3Endpoint: srv.URL(), S3LocationConstraint: true, // s3test server requires a LocationConstraint } }
func runTest(t *testing.T, testfunc func(t *testing.T, src, dst *Bucket)) { server, err := s3test.NewServer(nil) if err != nil { t.Fatalf("Cannot start test S3 server: %s", err) } defer server.Quit() config := aws.NewConfig() config.Credentials = credentials.NewStaticCredentials("xx", "yy", "zz") config.DisableSSL = aws.Bool(false) config.Endpoint = aws.String(server.URL()) config.Region = aws.String("us-east-1") config.S3ForcePathStyle = aws.Bool(true) srcBucketName := fmt.Sprintf("test-%d-src", testIdx) dstBucketName := fmt.Sprintf("test-%d-dst", testIdx) testIdx++ s3client := s3.New(config) for _, bucketName := range []string{srcBucketName, dstBucketName} { req := s3.CreateBucketInput{ Bucket: aws.String(bucketName), CreateBucketConfiguration: &s3.CreateBucketConfiguration{ LocationConstraint: aws.String("us-east-1"), }, } _, err := s3client.CreateBucket(&req) if err != nil { t.Fatalf("Error while creating bucket %s: %s", bucketName, err) } } srcBucket := Bucket{ Name: srcBucketName, Client: s3client, } dstBucket := Bucket{ Name: dstBucketName, Client: s3client, } testfunc(t, &srcBucket, &dstBucket) }
func NewTestableS3Volume(c *check.C, readonly bool, replication int) *TestableS3Volume { clock := &fakeClock{} srv, err := s3test.NewServer(&s3test.Config{Clock: clock}) c.Assert(err, check.IsNil) auth := aws.Auth{} region := aws.Region{ Name: "test-region-1", S3Endpoint: srv.URL(), S3LocationConstraint: true, } bucket := &s3.Bucket{ S3: s3.New(auth, region), Name: TestBucketName, } err = bucket.PutBucket(s3.ACL("private")) c.Assert(err, check.IsNil) return &TestableS3Volume{ S3Volume: NewS3Volume(auth, region, TestBucketName, readonly, replication), server: srv, serverClock: clock, } }