Documentation
¶
Index ¶
- func AssertDeleteNonexistentWorks(s3CLIPath string, cfg *config.S3Cli)
- func AssertGetNonexistentFails(s3CLIPath string, cfg *config.S3Cli)
- func AssertLifecycleWorks(s3CLIPath string, cfg *config.S3Cli)
- func AssertMultipartCopyWorks(s3CLIPath string, cfg *config.S3Cli)
- func AssertOnBulkOperations(s3CLIPath string, cfg *config.S3Cli)
- func AssertOnMultipartUploads(s3CLIPath string, cfg *config.S3Cli, content string)
- func AssertOnPutFailures(cfg *config.S3Cli, content, errorMessage string)
- func AssertOnSignedURLs(s3CLIPath string, cfg *config.S3Cli)
- func AssertOnStorageExists(s3CLIPath string, cfg *config.S3Cli)
- func AssertPutOptionsApplied(s3CLIPath string, cfg *config.S3Cli)
- func AssertSinglePartUploadWorks(s3CLIPath string, cfg *config.S3Cli)
- func CreateS3ClientWithFailureInjection(s3Config *config.S3Cli) (*s3.Client, error)
- func CreateTracingS3Client(s3Config *config.S3Cli, calls *[]string) (*s3.Client, error)
- func GenerateRandomString(params ...int) string
- func MakeConfigFile(cfg *config.S3Cli) string
- func MakeContentFile(content string) string
- func RunS3CLI(cliPath string, configPath string, storageType string, subcommand string, ...) (*gexec.Session, error)
- type S3TracingMiddleware
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AssertDeleteNonexistentWorks ¶
AssertDeleteNonexistentWorks asserts that `s3cli delete` on a non-existent object exits with status 0 (tests idempotency)
func AssertGetNonexistentFails ¶
AssertGetNonexistentFails asserts that `s3cli get` on a non-existent object will fail
func AssertLifecycleWorks ¶
AssertLifecycleWorks tests the main blobstore object lifecycle from creation to deletion
func AssertMultipartCopyWorks ¶
AssertMultipartCopyWorks tests multipart copy functionality by setting a low threshold This forces a small file to be copied using multipart copy (2 parts)
func AssertOnBulkOperations ¶
func AssertOnPutFailures ¶
func AssertOnSignedURLs ¶
AssertOnSignedURLs asserts on using signed URLs for upload and download
func AssertOnStorageExists ¶
func AssertPutOptionsApplied ¶
AssertPutOptionsApplied asserts that `s3cli put` uploads files with the requested encryption options
func AssertSinglePartUploadWorks ¶ added in v0.0.6
AssertSinglePartUploadWorks verifies that when SingleUploadThreshold is set above the file size, the upload uses a single PutObject call (PutSinglePart) instead of the multipart manager.
func CreateS3ClientWithFailureInjection ¶
CreateS3ClientWithFailureInjection creates an S3 client with failure injection middleware
func CreateTracingS3Client ¶
CreateTracingS3Client creates an S3 client with tracing middleware
func GenerateRandomString ¶
GenerateRandomString generates a random string of desired length (default: 25)
func MakeConfigFile ¶
MakeConfigFile creates a config file from a S3Cli config struct
func MakeContentFile ¶
MakeContentFile creates a temporary file with content to upload to S3
Types ¶
type S3TracingMiddleware ¶
type S3TracingMiddleware struct {
// contains filtered or unexported fields
}
S3TracingMiddleware captures S3 operation names for testing
func (*S3TracingMiddleware) HandleInitialize ¶
func (m *S3TracingMiddleware) HandleInitialize( ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler, ) (middleware.InitializeOutput, middleware.Metadata, error)
HandleInitialize implements the InitializeMiddleware interface
func (*S3TracingMiddleware) ID ¶
func (m *S3TracingMiddleware) ID() string
ID returns the middleware identifier