diff options
Diffstat (limited to 'weed/filer/s3iam_conf_test.go')
| -rw-r--r-- | weed/filer/s3iam_conf_test.go | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/weed/filer/s3iam_conf_test.go b/weed/filer/s3iam_conf_test.go new file mode 100644 index 000000000..88f446151 --- /dev/null +++ b/weed/filer/s3iam_conf_test.go @@ -0,0 +1,57 @@ +package filer + +import ( + "bytes" + "github.com/chrislusf/seaweedfs/weed/s3api" + "testing" + + "github.com/chrislusf/seaweedfs/weed/pb/iam_pb" + + "github.com/stretchr/testify/assert" +) + +func TestS3Conf(t *testing.T) { + s3Conf := &iam_pb.S3ApiConfiguration{ + Identities: []*iam_pb.Identity{ + { + Name: "some_name", + Credentials: []*iam_pb.Credential{ + { + AccessKey: "some_access_key1", + SecretKey: "some_secret_key1", + }, + }, + Actions: []string{ + s3api.ACTION_ADMIN, + s3api.ACTION_READ, + s3api.ACTION_WRITE, + }, + }, + { + Name: "some_read_only_user", + Credentials: []*iam_pb.Credential{ + { + AccessKey: "some_access_key2", + SecretKey: "some_secret_key2", + }, + }, + Actions: []string{ + s3api.ACTION_READ, + s3api.ACTION_TAGGING, + s3api.ACTION_LIST, + }, + }, + }, + } + var buf bytes.Buffer + err := S3ConfigurationToText(&buf, s3Conf) + assert.Equal(t, err, nil) + s3ConfSaved := &iam_pb.S3ApiConfiguration{} + err = ParseS3ConfigurationFromBytes(buf.Bytes(), s3ConfSaved) + assert.Equal(t, err, nil) + + assert.Equal(t, "some_name", s3ConfSaved.Identities[0].Name) + assert.Equal(t, "some_read_only_user", s3ConfSaved.Identities[1].Name) + assert.Equal(t, "some_access_key1", s3ConfSaved.Identities[0].Credentials[0].AccessKey) + assert.Equal(t, "some_secret_key2", s3ConfSaved.Identities[1].Credentials[0].SecretKey) +} |
